Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Cortar largo nodo en un Xml (https://www.clubdelphi.com/foros/showthread.php?t=90545)

Leopard2 06-07-2016 23:17:31

Cortar largo nodo en un Xml
 
Nuevamente solicitando una ayuda con el Xml, tengo un nombre de cliente (<RSR>) que no lo puedo abreviar pero el schema del servidor receptor no me permite mas de 40 caracteres y me lo rechaza. como lo puedo cortar a 40 caracteres y hacer un salto linea con la otra parte ?

Así esta :
Cita:

<F>3</F>
<FE>2016-06-22</FE>
<RR>76062745-3</RR>
<RSR>CEMENTA CONSTRUCCIONES Y MANTENCIONES ELECTROMECANICAS LIMITADA</RSR>
<MNT>2086857</MNT>
Así deberia quedar :
Cita:

<F>3</F>
<FE>2016-06-22</FE>
<RR>76062745-3</RR>
<RSR>CEMENTA CONSTRUCCIONES Y MANTENCIONES
ELECTROMECANICAS LIMITADA</RSR>

<MNT>2086857</MNT>
Saludos y gracias

ElKurgan 07-07-2016 06:59:39

Creo que no te va a servir de nada, ya que si el campo está delimitado por un schema, cuenta los caracteres entre las dos etiquetas de inicio y fin de nodo, es decir, que si le añades un retorno de carro el campo seguirá teniendo exceso de caracteres.

No veo otra posibilidad: O cortas el campo o amplias el tamaño del schema

Saludos

Leopard2 07-07-2016 18:15:04

Gracias por la respuesta estimado, de todas maneras me gustaria saber si hay una manera de colocar el string del nodo de la forma que coloque, lo intente con SubString y Copy pero no logro hacerlo.
Saludos

dec 07-07-2016 18:44:59

Hola,

Cita:

Empezado por Leopard2 (Mensaje 506787)
Gracias por la respuesta estimado, de todas maneras me gustaria saber si hay una manera de colocar el string del nodo de la forma que coloque, lo intente con SubString y Copy pero no logro hacerlo.
Saludos

Si te refieres a incluir retornos de carro y hasta código HTML o XML tal vez dicho nodo tendría que ser una sección (?) "CDATA".

Leopard2 13-07-2016 05:20:55

Cita:

Empezado por dec (Mensaje 506788)
Hola,
Si te refieres a incluir retornos de carro y hasta código HTML o XML tal vez dicho nodo tendría que ser una sección (?) "CDATA".

Y al ser CDATA puedo hacer un salto de linea con /n, algo asi :

Cita:

Nodo.Text := Copy(Cliente,1,40) + /n + Copy(Cliente,41,30);
Saludos


La franja horaria es GMT +2. Ahora son las 05:10:56.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi