none
¿Cómo poner expresión en instancia de clase XML para transferencias Sepa?

    Debate general

  • Buenas tardes.

    Estoy generando el fichero XML de transferencias Sepa y me he quedado estancado al poner la expresión que determina una de las 2 opciones: Persona jurídica o persona física. Llevo varios días y no doy con la expresión válida.

    El esquema correspondiente a ese apartado es el siguiente;

    Id....Party6Choice

    Sequence.....Choice:

    OrgId....Organisationidentification4

    PrvtId...PersonIdentification5

    Las clases correspondientes  a Party6Choice son las siguientes:

      '''<comentarios/>
            Public Property Id() As Party6Choice
                Get
                    Return Me.idField
                End Get
                Set
                    Me.idField = value
                End Set
            End Property

     Partial Public Class Party6Choice

            Private itemField As Object

            '''<comentarios/>
            <System.Xml.Serialization.XmlElementAttribute("OrgId", GetType(OrganisationIdentification4)),
         System.Xml.Serialization.XmlElementAttribute("PrvtId", GetType(PersonIdentification5))>
            Public Property Item() As Object
                Get
                    Return Me.itemField
                End Get
                Set
                    Me.itemField = value
                End Set
            End Property
        End Class

    Y la instancia a las clases:

     
     
            Dim NDoc As New Document
            With NDoc
                .CstmrCdtTrfInitn = New CustomerCreditTransferInitiationV03
                With .CstmrCdtTrfInitn
                    .GrpHdr = New GroupHeader32
                    With .GrpHdr
                        .MsgId = vIdentificacionM
                        .CreDtTm = DateTime.Now.ToString("yyy-MM-ddTHH:mm:ss")
                        .NbOfTxs = 3
                        .CtrlSum = 15000.0
    
                        '                    .NbOfTxs = FTransferencias.vpi
                        '                   .CtrlSum = FTransferencias.vps2
                        .InitgPty = New PartyIdentification32
                        With .InitgPty
                            .Nm = vEmpresaNombre
                            .Id = New Party6Choice
                            With .Id
                                .Item = ***********
    
                                .OrgId = New OrganisationIdentification4
                                With .orgId
                                End With
                            End With
                            .Prvtid = New PersonIdentification5
                                End With
                             End With
                    End With
                End With
            End With
            Dim writer As New StreamWriter("d:\transferencias.xml")
            Dim x As New XmlSerializer(NDoc.GetType)
            x.Serialize(writer, NDoc)
    
        End Sub

    Donde están los asteríscos es donde no sé que expresión poner para seleccionar una de las 2 opciones: OrgId ó PrvtId, de pendiendo del valor de la variable vopción que puede tener uno de los dos valores "J" ó "F".

    No sé si me he explicado bien, espero que sí.

    Agradecería sus comentarios al respecto ya que no logro avanzar a partir de ese punto.

    Gracias y saludos.

    lunes, 19 de diciembre de 2016 15:29