0

我已经使用 hl7 2.5.1 的 NHapi 计算出大部分(我认为)PID 和 RAX 的值。

我遇到的困难是(我假设)使用诸如 rxa.AdministeredCode.Components[5] 之类的组件。

如何设置该值?

我假设 rxa.GetSubstanceManufacturerName(0).Components 也是一样的?和 rxa.GetAdministrationNotes(0)。

吉娜

4

1 回答 1

0

尝试这个

class Program
{
    static void Main(string[] args)
    {
        EncodingCharacters enchars = new EncodingCharacters('|', "^~\\&");
        IModelClassFactory theFactory = new DefaultModelClassFactory();

        NHapi.Model.V251.Segment.RXA rxa = new NHapi.Model.V251.Segment.RXA(new VXU_V04(theFactory), theFactory);
        IType[] t = rxa.GetSubstanceManufacturerName(0).Components;
        SetRXA(t);
        Debug.Print(PipeParser.Encode(rxa, enchars));
        Console.Read();
    }


    public static void SetRXA(IType[] components)
    {
        for (int i = 0; i < components.Length; i++)
        {
            if (components[i] is IPrimitive)
            {
                IPrimitive prim = (IPrimitive)components[i];
                prim.Value = "Component"+i;
            }
            else if (components[i] is IComposite)
                SetRXA(((IComposite)components[i]).Components);
            //if Varies do something else
        }
    }
}
于 2018-05-21T13:49:53.797 回答