Estimado amigos, llevo trabajando nn tiempo con clipper, me pase a fivewin y de ahi a fivewin xharbour, estoy con FWH 8.12. BCC55, Xharbour, el tema es el siguiente que me supera y necesito trabajar como explico.
Tengo un sistema que emite facturas, para que salga la factura electrónica en chile, contrate una aplicación (integrador) que captura mi xml, y lo enlaza con el certificado y genera el documento final, pero
solo puedo ver ese documento en la pagina web del dueño de este integrador.
cFileName :="Fact001"+".Xml"
ASI FUNCIONA COMO INDICA
cComando := "SFACTURA"+" "+"distribuidora@gmail.com"+" "+"m844"+" "+"pro"+" "+cFileName
WINEXEC( cComando )
pero necesito agregar los siguiente :
"{\"savePDF\":\"C:\\temp\\dte-123\"}"
para que se ejecute asi
sfactura.exe "usuario@empresa.com" "miclave" "cer" "archivo.json" "{\"savePDF\":\"C:\\temp\\dte-123\"}"
pero las comillas del comando "{\"savePDF\":\"C:\\temp\\dte-123\"}" , me dan error por todos lados...
ahora este programa, genera de respuesta un mensaje de error o de respuesta como string JSON de la siguiente forma {"ok":true,"folio":"125"} , donde ese numero corresponde al numero del documento que se genero, el numero de la factura, hay forma de capturar esa respuesta de ese numero, para que de ahi, pueda guardar el numero real de documento en mi sistema.
Atte.,
CONSULTA CON PROGRAMA EXTERNO
Re: CONSULTA CON PROGRAMA EXTERNO
Suponiendo que tu problema sea con integrar las comillas dentro de tu cadena
Intenta generar la cadena sustituyendo las comillas que tengas que integrar dentro de la cadena como
o también puedes hacer
Intenta generar la cadena sustituyendo las comillas que tengas que integrar dentro de la cadena como
Code: Select all
string := "Mi Cadena " + Chr( 34 ) + "otro " + Chr( 34 )
Code: Select all
string := "Mi cadena " + '"' + "otro " + '"'
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
- nageswaragunupudi
- Posts: 8017
- Joined: Sun Nov 19, 2006 5:22 am
- Location: India
- Contact:
Re: CONSULTA CON PROGRAMA EXTERNO
string := [I have double " quotes and also single ' quotes]
? string
? string
Regards
G. N. Rao.
Hyderabad, India
G. N. Rao.
Hyderabad, India
-
- Posts: 3
- Joined: Sat Aug 20, 2016 4:50 pm
Re: CONSULTA CON PROGRAMA EXTERNO
Envío de Opciones
Las opciones adicionales se definen mediante un string JSON.
En caso de utilizar el comando sfactura.exe, es importante advertir que la linea de comandos requiere escapar _ " y \ anteponiendo un caracter de escape \.
Por ejemplo, si queremos pasar como argumento el string JSON {"savePDF" : "c:\temp\dte-123"}, la linea de comandos debe quedar así:
sfactura.exe "usuario@empresa.com" "miclave" "cer" "archivo.json" "{\"savePDF\":\"C:\\temp\\dte-123\"}"
Notar que en el comando anterior hemos destacado en rojo el caracter de escape \.
Envío de Mails
Para enviar los PDF y XML a los receptores de los DTE, se puede utilizar la opción mail, indicando el correo electrónico de la casilla del receptor destinada para la recepción de los DTE:
{
"mail" : "dte@cliente.cl"
}
Descargas de PDF
Esta opción permite descargar los PDF de los DTE copia original y copia cedible (cuando corresponda).
Para tales efectos, se debe especificar la opción savePDF e indicar la ruta de destino y el prefijo para los archivos PDF que se descargarán.
Por ejemplo, si se especifica la ruta C:\temp\dte-123, se generarán los archivos C:\temp\dte-123.pdf para la copia original y C:\temp\dte-123-cedible.pdf para la copia cedible.
{
"savePDF" : "C:\temp\dte-123"
}
a lo anterior, como poder cargarlo en mi archivo de arranque como escribo asi
cComando := "SFACTURA"+" "+"distribuidora@gmail.com"+" "+"m844"+" "+"pro"+" "+cFileName
WINEXEC( cComando )
se puede hacer esto :
cRespuesta := WINEXEC( cComando )
en donde en cRespuesta, debiera quedar = {"ok":true,"folio":"125"}, ya que necesito saber que el envió quedo Ok, y capturar ese numero.
Las opciones adicionales se definen mediante un string JSON.
En caso de utilizar el comando sfactura.exe, es importante advertir que la linea de comandos requiere escapar _ " y \ anteponiendo un caracter de escape \.
Por ejemplo, si queremos pasar como argumento el string JSON {"savePDF" : "c:\temp\dte-123"}, la linea de comandos debe quedar así:
sfactura.exe "usuario@empresa.com" "miclave" "cer" "archivo.json" "{\"savePDF\":\"C:\\temp\\dte-123\"}"
Notar que en el comando anterior hemos destacado en rojo el caracter de escape \.
Envío de Mails
Para enviar los PDF y XML a los receptores de los DTE, se puede utilizar la opción mail, indicando el correo electrónico de la casilla del receptor destinada para la recepción de los DTE:
{
"mail" : "dte@cliente.cl"
}
Descargas de PDF
Esta opción permite descargar los PDF de los DTE copia original y copia cedible (cuando corresponda).
Para tales efectos, se debe especificar la opción savePDF e indicar la ruta de destino y el prefijo para los archivos PDF que se descargarán.
Por ejemplo, si se especifica la ruta C:\temp\dte-123, se generarán los archivos C:\temp\dte-123.pdf para la copia original y C:\temp\dte-123-cedible.pdf para la copia cedible.
{
"savePDF" : "C:\temp\dte-123"
}
a lo anterior, como poder cargarlo en mi archivo de arranque como escribo asi
cComando := "SFACTURA"+" "+"distribuidora@gmail.com"+" "+"m844"+" "+"pro"+" "+cFileName
WINEXEC( cComando )
se puede hacer esto :
cRespuesta := WINEXEC( cComando )
en donde en cRespuesta, debiera quedar = {"ok":true,"folio":"125"}, ya que necesito saber que el envió quedo Ok, y capturar ese numero.