Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Oracle (https://www.clubdelphi.com/foros/forumdisplay.php?f=22)
-   -   Delphi insert BD ORACLE (https://www.clubdelphi.com/foros/showthread.php?t=88839)

lsanchez 11-08-2015 20:06:00

Delphi insert BD ORACLE
 
Buenas tardes gente,
Tengo un string, al cual paso un delimitador "\" para que inserte un salto de línea. Ahí todo bien, la data que tengo como respuesta es la siguiente:
Cita:

"ESTO ES UN ESPACIO EN BLANCO"
W
003797
17/07/2015
15:01:30
00920709
-----
------
------
05
------
9074:(AdvertenciadeRectificaci?n)SECUP:1BDUAHDR1.Codi_Prove:**CODIGODEPROVEEDOREXTRANJERONOEXISTE,VERIFICA RENELPORTALADUANERO
"ESTO ES UN ESPACIO EN BLANCO"
W
003797
17/07/2015
15:01:41
00920709
-----
------
------
05
------
9204:(AdvertenciadeRectificaci?n)DUAHDR.DIRE_IMPOR-20508565934-direcci?ndiferentealregistrado**MODIFICACI?NIMPROCEDENTE,NOSER?CONSIDERADA
"ESTO ES UN ESPACIO EN BLANCO"
Necesito insertar esto en una BD ORACLE, interpretando el salto de linea como el fin del campo para tomar el siguiente,
Cita:

Campo1:w , campo2:003797, campo3:17/07/2015, campo4:15:01:41,campo5:00920709, así sucesivamente.
Si notan el "ESTO ES UN ESPACIO EN BLANCO" debe indicar que es el fin de los campos, no hay campos nulos o vacíos así que no habrá problema en eso.
Espero me puedan ayudar.
Saludos, y gracias de antemano por su tiempo.

Neftali [Germán.Estévez] 12-08-2015 16:17:30

No entiendo cual es exactamente tu problema.
¿No sabes hacerlo?
¿Necesitas ideas?

Si utilizas un TStringList, lo cargas y recorres los elementos, no deberías tener problemas para ir obteniendo los campos.

De todas formas es posible que no te esté entendiendo...

lsanchez 12-08-2015 19:44:29

Cita:

Empezado por Neftali (Mensaje 495414)
No entiendo cual es exactamente tu problema.
¿No sabes hacerlo?
¿Necesitas ideas?

Si utilizas un TStringList, lo cargas y recorres los elementos, no deberías tener problemas para ir obteniendo los campos.

De todas formas es posible que no te esté entendiendo...

Ante todo, gracias por tu respuesta.
Creo que no me deje entender bien, quería una idea de comor insertar cada linea de mi resultado en un determinado campo en Oracle, pero cumpliendo las condiciones del espacio en blanco y el salto de linea de cada fila. Pero no me complique mas y lo hice de la siguiente manera:
Código Delphi [-]
contieneTSL:=SepararCadena(resHtml,' ');
     contieneStr:=contieneTSL.Text;
     campos:='(empresa,ano_prese,codi_aduan,codi_regi,nume_orden,correo,fecha,archivo,declaracion,serie,i  tem,tipo_envio,guia_postal,observacion)';
            if contieneStr<>EmptyStr then
                begin                  
                     for i:=0 to contieneTSL.Count-1 do
                     begin
                      contieneTSL[i]:='INSERT INTO ORDEN_ERRORES_NUMERACION '+campos+' VALUES ('+contieneTSL[i]+');';
                      Memo2.Lines:=contieneTSL;
                     end;                   
                end;
Pero ahora mi duda es, como establecer la conexión con oracle y hacer que mi varibale contieneTSL se ejecute como sentencia SQL insertando las veces que exista.
Actualmente contieneTSL me imprime esto en un memo como resultado:
Código SQL [-]
INSERT INTO ORDEN_ERRORES_NUMERACION (empresa,ano_prese,codi_aduan,codi_regi,nume_orden,correo,fecha,archivo,declaracion,serie,item,tipo_  envio,guia_postal,observacion)
VALUES ('W','003797','17/07/2015','15:01:30','00920709','-----','------','------','05','------','9074:(AdvertenciadeRectificaci?n)SECUP:1BDUAHDR1.Codi_Prove:**CODIGO_DE_PROVEEDOR_EXTRANJERO_NO_E  XISTE,VERIFICAR_PORTAL_ADUANERO');
INSERT INTO ORDEN_ERRORES_NUMERACION (empresa,ano_prese,codi_aduan,codi_regi,nume_orden,correo,fecha,archivo,declaracion,serie,item,tipo_  envio,guia_postal,observacion) 
VALUES ('W','003797','17/07/2015','15:01:41','00920709','-----','------','------','05','------','9204:(AdvertenciadeRectificaci?n)DUAHDR.DIRE_IMPOR-20508565934-direcci?ndiferentealregistrado**MODIFICACI?NIMPROCEDENTE,NOSER?CONSIDERADA');
INSERT INTO ORDEN_ERRORES_NUMERACION (empresa,ano_prese,codi_aduan,codi_regi,nume_orden,correo,fecha,archivo,declaracion,serie,item,tipo_  envio,guia_postal,observacion) 
VALUES ('W','003797','17/07/2015','15:01:41','00920709','-----','------','------','05','------','9204:(AdvertenciadeRectificaci?n)Direcci?nSUNAT:AV.ANGAMOSESTE1805-P-10,SURQUILLO,LIMA,LIMA**MODIFICACI?NIMPROCEDENTE,NOSER?CONSIDERADA');


La franja horaria es GMT +2. Ahora son las 22:16:47.

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