¿Cómo hacer la ejecución de la operación?
DoExecuteOprAction (datajson, controlkey, iapp, random) : json

Descripción

Función que permite la ejecución de una acción sobre una o varias operaciones según el caso. Las acciones que se pueden ejecutar son:

Para ejecutar alguna de las acciones descritas anteriormente, es necesario conocer el tipo de operación sobre la que se realizará la acción, en algunos casos es necesario conocer el número de la operación sobre la que se ejecutará la acción.

Para conocer los tipos de operación (itdoper) disponibles, consulte el documento “TiposDeOperaciones” de la zona de “Documentación de apoyo”.

Resultado

Retorna un Json con un listado de terceros registrados en el sistema.
Seguridad
Aplica todas las configuraciones de seguridad de datos y de seguridad de acciones de ContaPyme / AgroWin.
Compatibilidad de la API
Función disponible desde ContaPyme/AgroWin Versión 4 - Release 7.

Petición

Requisitos
Debe haber realizado el logueo en el agente a través de la función GETAUTH().
Parámetros
Nombre parámetro Tipo Descripción Ejemplo
dataJSON JSON

Json que contiene en su interior la siguiente estructura:

accion: Especifica la acción que se va a realizar sobre las operaciones. Puede ser:

NEW: Crea un nuevo registro para una operación del tipo especificado en el parámetro “itdoper”. Esta acción retorna el número de operación “inumoper” asignado.

LOAD: Carga la información de la operación especificada en el parámetro “inumoper”. En inumoper solo se permite un dato, es decir, solo se puede cargar una operación a la vez.

SAVE: Graba la información dada en el parámetro “oprdata” para la operación especificada en el parámetro “itdoper”. En el parámetro “inumoper” solo se permite un dato, es decir, solo se puede grabar una operación a la vez.

CREATE: Crea la operación y guarda la información dada en el parámetro “oprdata”. Esta acción retorna el número de operación “inumoper” asignado.

APPEND: Adiciona la información de los listados de datos dados en el parámetro “oprdata”, para la operación especificada; es decir que la información que se guarde con esta acción no reemplazará la ya existente, sino que se adicionará al final de cada listado. Para los datos simples (que no son listas) los datos sí son reemplazados. Ejemplo de uso: adición de productos a una operación de factura o pedido existente.

PROCESS: Procesa las operaciones dadas en el parámetro “inumoper”.

UNPROCESS: Desprocesa las operaciones dadas en el parámetro “inumoper”.

VERIFY: Verifica las operaciones dadas en el parámetro “inumoper”.

ANULAR: Anula las operaciones dadas en el parámetro “inumoper”.

DELETE: Borra las operaciones dadas en el parámetro “inumoper”.

MTOTALAPAGAR: Obtiene el total a pagar neto de la operación.

EMAILSOPR: Obtiene los emails de los terceros involucrados en la operación con la siguiente información: rol del tercero en la operación (cliente, vendedor, etc.), nombre del tercero, email.

ROLESOPR: Retorna los diferentes roles de terceros que aplican para la operación (cliente, vendedor, recaudador, vendedor 2, etc.).

CALCULARIMPUESTOS: (Solo aplica inicialmente para la operación de ventas): Calcula todos los impuestos automáticos según la configuración de la operación, la clasificación legal de la empresa y la clasificación tributaria del tercero. Si en “oprdata” se envían los datos de la operación, los calcula y retorna dentro del mismo JSON. Si es para una operación ya existente, se envía los números de operación en “operaciones”.

LOADCONFIG: Obtiene unos atributos básicos de configuración de la operación que faciliten la implementación de una interfaz para la edición de la información.

GETDATAIRECURSO: (Solo aplica para operaciones de ventas, pedidos y cotización): Retorna un objeto JSON con toda la información necesaria para ordenar, cotizar o vender el producto de un número de registro indicado. Dentro de los datos que se calculan están: CC por defecto, porcentaje de descuento que aplica, porcentaje de IVA, precio de lista, datos calculados según expresiones de cálculo establecidas, etc.
Para indicar qué registro de producto va a ser usado para el cálculo de esta acción, se envía un campo adicional “objindex” (0..n) con el número de registro de la lista (de operación existente o según datos del JSON “oprdata”).


operaciones: Arreglo de objetos donde cada elemento lleva:
inumoper: Indica el número de operación sobre la que se ejecutara la acción.

itdoper: Determina el tipo de operación sobre la que se realizara la acción, los tipos de operación se encuentran en el documento: “TiposDeOperaciones” de la zona de “Documentación de apoyo”.


oprdata: Objeto que contiene la información de la operación que se va a guardar cuando la acción es SAVE, CREATE o cualquiera de las de cálculo de datos (MTOTALAPAGAR, EMAILSOPRS, CALCULARIMPUESTOS, etc.). En los demás casos no se necesita la información completa de la operación.

Para conocer la estructura del objeto Json de cada operación, se debe consultar la documentación correspondiente a la operación.

Los ejemplos de cada una de las acciones, se encuentran en la zona “Ejemplo de la URL del llamado de la función” de este documento.

controlkey Varchar Corresponde al keyagente obtenido en el logueo (requerido). "564654"
iapp Varchar Código que identifica a la aplicación que interactúa con el Agente (requerido) "1068"
random Varchar Cadena aleatoria que se crea en el lado del cliente, esto con el fin de que las peticiones no sean cacheadas por el navegador Internet Explorer (para aplicaciones web). (Opcional). "54654"
Ejemplo de la ejecución en JavaScript
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "NEW", "operaciones": [ { "itdoper": "ORD4" } ] }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "LOAD", "operaciones": [ { "inumoper": "34972", "itdoper": "ORD4" } ] }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "SAVE", "operaciones": [ { "inumoper": "34972", "itdoper": "ORD4" } ], "oprdata": { "datosprincipales": { "init": "0310034132", "initvendedor": "0471006589", "finicio": "05/21/2014", "qdias": "15", "ilistaprecios": "1", "sobservenc": "", "bregvrunit": "F", "qporcdescuento": "0", "bregvrtotal": "F", "frmenvio": "3", "frmpago": "1", "condicion1": "1", "blistaconiva": "F", "busarotramoneda": "F", "imonedaimpresion": "", "mtasacambio": "0", "ireferencia": "", "bcerrarref": "F", "itdprintobs": "-1", "icontactocliente": "0" }, "encabezado": { "iemp": "1", "inumoper": "34972", "itdsop": "34", "fsoport": "05/21/2014", "iclasifop": "0", "imoneda": "10", "iprocess": "0", "banulada": "F", "inumsop": "0", "snumsop": "", "tdetalle": "Cotización del cliente Antonio Madera" }, "formacobro": { }, "liquidacion": { "parcial": "0", "descuento": "0", "iva": "0", "total": "1750000" }, "listaproductos": [ { "iinventario": 0, "irecurso": "C01140", "itiporec": "", "qrecurso": 1, "mprecio": "550000.0000", "qporcdescuento": 0, "qporciva": "0", "mvrtotal": "550000", "sobserv": "", "dato1": "", "dato2": "", "dato3": "", "dato4": "", "dato5": "", "dato6": "", "valor1": "", "valor2": "", "valor3": "", "valor4": "" }, { "iinventario": 0, "irecurso": "C01145", "itiporec": "", "qrecurso": 1, "mprecio": "1200000.0000", "qporcdescuento": 0, "qporciva": "0", "mvrtotal": "1200000", "sobserv": "", "dato1": "", "dato2": "", "dato3": "", "dato4": "", "dato5": "", "dato6": "", "valor1": "", "valor2": "", "valor3": "", "valor4": "" } ], "listaanexos": [ ], "qoprsok": "0" } }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "APPEND", "operaciones": [ { "inumoper": "34972", "itdoper": "ORD4" } ], "oprdata": { "listaproductos": [ { "iinventario": 0, "irecurso": "C01140", "itiporec": "", "qrecurso": 1, "mprecio": "550000.0000", "qporcdescuento": 0, "qporciva": "0", "mvrtotal": "550000", "sobserv": "", "dato1": "", "dato2": "", "dato3": "", "dato4": "", "dato5": "", "dato6": "", "valor1": "", "valor2": "", "valor3": "", "valor4": "" }, { "iinventario": 0, "irecurso": "C01145", "itiporec": "", "qrecurso": 1, "mprecio": "1200000.0000", "qporcdescuento": 0, "qporciva": "0", "mvrtotal": "1200000", "sobserv": "", "dato1": "", "dato2": "", "dato3": "", "dato4": "", "dato5": "", "dato6": "", "valor1": "", "valor2": "", "valor3": "", "valor4": "" } ] } }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "CREATE", "operaciones": [ { "itdoper": "ORD4" } ], "oprdata": { "datosprincipales": { "init": "0310034132", "initvendedor": "0471006589", "finicio": "05/21/2014", "qdias": "15", "ilistaprecios": "1", "sobservenc": "", "bregvrunit": "F", "qporcdescuento": "0", "bregvrtotal": "F", "frmenvio": "3", "frmpago": "1", "condicion1": "1", "blistaconiva": "F", "busarotramoneda": "F", "imonedaimpresion": "", "mtasacambio": "0", "ireferencia": "", "bcerrarref": "F", "itdprintobs": "-1", "icontactocliente": "0" }, "encabezado": { "iemp": "1", "itdsop": "34", "fsoport": "05/21/2014", "iclasifop": "0", "imoneda": "10", "iprocess": "0", "banulada": "F", "inumsop": "0", "snumsop": "", "tdetalle": "Cotizacióndel cliente Antonio Madera" }, "formacobro": { }, "liquidacion": { "parcial": "0", "descuento": "0", "iva": "0", "total": "1750000" }, "listaproductos": [ { "iinventario": 0, "irecurso": "C01140", "itiporec": "", "qrecurso": 1, "mprecio": "550000.0000", "qporcdescuento": 0, "qporciva": "0", "mvrtotal": "550000", "sobserv": "", "dato1": "", "dato2": "", "dato3": "", "dato4": "", "dato5": "", "dato6": "", "valor1": "", "valor2": "", "valor3": "", "valor4": "" }, { "iinventario": 0, "irecurso": "C01145", "itiporec": "", "qrecurso": 1, "mprecio": "1200000.0000", "qporcdescuento": 0, "qporciva": "0", "mvrtotal": "1200000", "sobserv": "", "dato1": "", "dato2": "", "dato3": "", "dato4": "", "dato5": "", "dato6": "", "valor1": "", "valor2": "", "valor3": "", "valor4": "" } ], "listaanexos": [ ], "qoprsok": "0" } }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "PROCESS", "operaciones": [ { "inumoper": "34972", "itdoper": "ORD4" } ] }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "UNPROCESS", "operaciones": [ { "inumoper": "34972", "itdoper": "ORD4" } ] }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "VERIFY", "operaciones": [ { "inumoper": "34972", "itdoper": "ORD4" } ] }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "ANULAR", "operaciones": [ { "inumoper": "34972", "itdoper": "ORD4" } ] }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "DELETE", "operaciones": [ { "inumoper": "34972", "itdoper": "ORD4" } ] }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "MTOTALAPAGAR", "operaciones": [{ "inumoper": "34973", "itdoper": "ING1" }] }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "EMAILSOPR", "operaciones": [{ "inumoper": "34972", "itdoper": "ORD4" }] }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "ROLESOPR", "operaciones": [{ "inumoper": "34973", "itdoper": "ING1" }] }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "CALCULARIMPUESTOS", "operaciones": [ { "itdoper": "ING1" } ], "oprdata": { "datosprincipales": { "init": "10212121", "iinventario": "2", "initvendedor": "14856296", "initvendedor2": "", "busarotramoneda": "F", "sobserv": "SOPORTE API", "imoneda": "10", "qporcdescuento": "0.0000", "ilistaprecios": "1", "blistaconiva": "F", "isucursalcliente": "-1", "bfacturaexportacion": "F", }, "encabezado": { "iemp": "1", "inumoper": "", "tdetalle": "Ventas 01-02-2019", "itdsop": "2", "inumsop": "", "snumsop": "", "fsoport": "02/01/2019", "iclasifop": "0", "imoneda": "10", }, "listaproductos": [ { "iinventario": "2", "irecurso": "EQP003", "nrecurso": "COMPUTADOR CLON 1", "nunidad": "Und", "qproducto": "1.0000", "mprecio": "1350000.0000", "qporcdescuento": "0.0000", "mvrtotal": "1350000.0000", "sobserv": "PC Clon con todos los accesorios.", "qporciva": "19.0000", "icc": "10101", "dato1": "", "dato2": "", "dato3": "", "dato4": "", "dato5": "", "dato6": "", "valor1": "0.0000", "valor2": "0.0000", "valor3": "0.0000", "valor4": "0.0000", } ], } }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON = { "accion": "LOADCONFIG", "operaciones": [{ "itdoper": "ING1" }] }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
//Escriba a continuación la URL donde se encuentra su Agente de servicios web de ContaPyme. var URLUbicacion = 'http://local.insoft.co:9000' var URLFuncion = '/datasnap/rest/TCatOperaciones/"DoExecuteOprAction"/'; //Se construye la URL completa la cual es la concatenación de la ubicación y la función var URL = URLUbicacion + URLFuncion; //Invocamos la función que retorna controlKey para modo aprendizaje var controlkey = getControlKey(URLUbicacion); //1001 es el iapp configurado para agente de servicios web de ContaPyme. var iapp = "1001"; //dataJSON: parámetros de entrada para la función var dataJSON ={ "accion": "GETDATAIRECURSO", "operaciones": [{ "itdoper": "ING1" }], "oprdata": { "datosprincipales": { "init": "0310034132", "initvendedor": "0471006589", "initvendedor2": "", "ilistaprecios": "1", "sobservenc": "", "bregvrunit": "F", "qporcdescuento": "0", "bregvrtotal": "F", "blistaconiva": "F", "busarotramoneda": "F", "imonedaimpresion": "", "mtasacambio": "0", "ireferencia": "", "bcerrarref": "F", "itdprintobs": "-1", "isucursalcliente": "0" }, "encabezado": { "iemp": "1", "itdsop": "1", "fsoport": "05/21/2014", "iclasifop": "0", "imoneda": "10", "iprocess": "0", "banulada": "F", "inumsop": "0", "snumsop": "", "tdetalle": "Venta productos a Antonio Madera" }, "formacobro": {}, "liquidimpuestos": {}, "listaproductos": [{ "iinventario": 0, "irecurso": "C01140", "itiporec": "", "qrecurso": 1, "mprecio": "550000.0000", "qporcdescuento": 0, "qporciva": "0", "mvrtotal": "550000", "sobserv": "", "dato1": "", "dato2": "", "dato3": "", "dato4": "", "dato5": "", "dato6": "", "valor1": "", "valor2": "", "valor3": "", "valor4": "" }, { "iinventario": 0, "irecurso": "C01145", "itiporec": "", "qrecurso": 1, "mprecio": "1200000.0000", "qporcdescuento": 0, "qporciva": "0", "mvrtotal": "1200000", "sobserv": "", "dato1": "", "dato2": "", "dato3": "", "dato4": "", "dato5": "", "dato6": "", "valor1": "", "valor2": "", "valor3": "", "valor4": "", "qproducto2": "" }], "listaanexos": [], "qoprsok": "0" }, "objindex": "0" }; //Se arma los 4 parámetros de entrada de la funcion var JSONSend ={ "_parameters" : [ JSON.stringify(dataJSON), controlkey, iapp ,"0" ] }; //se constuye objeto para realizar la petición desde JavaScript var xhr = new XMLHttpRequest(); //Se inicializa la solicitud enviando el verbo y la URL a invocar xhr.open("POST",URL); //Se define el evento que se disparará cuando se resuelva la petición xhr.onreadystatechange = function() { //se verifica que la petición se hubiese terminado if (xhr.readyState == 4 && xhr.status == 200) { //se envia la respuesta del servidor para que se imprima imprimirRespuesta(xhr.responseText) } }; //Envía la solicitud adjuntando el JSONSend que contiene los 4 parametros de la función xhr.send(JSON.stringify(JSONSend));
EJECUTAR CODIGO
Ver otros ejemplos en: PHP , JAVA , C# , Visual Basic.net , Visual Basic 6 , Delphi.
Ver documentación de la petición por GET.

Respuesta

JSONIr arriba
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "224" }, "respuesta": { "datos": { "iemp": "1", "inumoper": "34972", "itdsop": "34", "fsoport": "05/21/2014", "iclasifop": "0", "imoneda": "10", "iprocess": "0", "banulada": "F", "qoprsok": "0" } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "221" }, "respuesta": { "datos": { "encabezado": { "iemp": "1", "inumoper": "34972", "itdsop": "34", "fsoport": "05/21/2014", "iclasifop": "0", "imoneda": "10", "iprocess": "0", "banulada": "F" }, "liquidacion": { "parcial": "0", "descuento": "0", "iva": "0", "total": "0" }, "datosprincipales": { "init": "10530547", "initvendedor": "10365201", "finicio": "30/12/1899", "qdias": "0", "ilistaprecios": "0", "sobservenc": "", "sobservpie": "", "bregvrunit": "F", "qporcdescuento": "0", "bregvrtotal": "F", "frmenvio": "0", "frmpago": "0", "condicion1": "0", "blistaconiva": "F", "busarotramoneda": "F", "imonedaimpresion": "", "mtasacambio": "0", "ireferencia": "", "bcerrarref": "F", "itdprintobs": "1", "icontactocliente": "0" }, "listaproductos": [ ], "listaanexos": [ ], "qoprsok": "0" } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "261" }, "respuesta": { "datos": { "resultado": "T", "qoprsok": "0" } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "261" }, "respuesta": { "datos": { "resultado": "T", "qoprsok": "0" } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "261" }, "respuesta": { "datos": { "resultado": "T", "qoprsok": "0", "inumoper": "147584" } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "619" }, "respuesta": { "datos": { "resultado": "T", "errores": "0", "advertencias": "0", "bitacora": "
Verificación...<\/span><\/font>


size:16px\">Proceso...<\/span><\/font>


Proceso Creación de una cotización...<\/span><\/font>


<\/body>", "qoprsok": "1" } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "295" }, "respuesta": { "datos": { "resultado": "T", "qoprsok": "1" } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "619" }, "respuesta": { "datos": { "resultado": "T", "errores": "0", "advertencias": "0", "bitacora": "Verificación...<\/span><\/font><\/body>", "qoprsok": "1" } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "128" }, "respuesta": { "datos": { "resultado": "T", "qoprsok": "0" } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "261" }, "respuesta": { "datos": { "resultado": "T", "qoprsok": "0" } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "562" }, "respuesta": { "datos": { "resultado": { "mtotalapagar": "150000" } } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "562" }, "respuesta": { "datos": { "resultado": [ { "etiqueta": "cliente", "nombre": "Pablo Arciniegas", "email": "parciniegas@gmail.com" }, { "etiqueta": "vendedor", "nombre": "Sandra Cardona", "email": "scardona@mpcomputadores.com" } ] } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "562" }, "respuesta": { "datos": { "resultado": [ "1|cliente", "2|vendedor", "3|vendedor 2" ] } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "562" }, "respuesta": { "datos": { "resultado": { "liquidimpuestos": [ { "iconcepto": "IVAV16VL", "nconcepto": "IVA liquidado", "isigno": "+", "mvalorbase": "290000.0000", "qpercent": "16.0000", "mvalor": "46400.0000", "bautocalc": "S", "icuenta": "24080116", "initcxx": "800197268", "iasiento": "C", "mvrbasemin": "0.0000", "bdefecto": "N", "sobserv": "", "custom": "F", "itdsop": "10", "inumsop": "FV-000068", "init": "900631860", "fpago": "11/13/2014", "icc": "", "iaccion": "2", "icuentaiesinsigno": "", "itablapago": "IVA", "bsistema": "T", "mvrotramoneda": "0.0000" }, { "iconcepto": "RCREE03", "nconcepto": "Impuesto CREE 0.4%", "isigno": "", "mvalorbase": "310000.0000", "qpercent": "0.4000", "mvalor": "1240.0000", "bautocalc": "S", "icuenta": "13559003", "initcxx": "800197268", "iasiento": "D", "mvrbasemin": "1.0000", "bdefecto": "N", "sobserv": "", "custom": "F", "itdsop": "10", "inumsop": "FV-000068", "init": "900631860", "fpago": "11/13/2014", "icc": "", "iaccion": "1", "icuentaiesinsigno": "23659003", "itablapago": "RETENCION", "bsistema": "T", "mvrotramoneda": "0.0000" } ] } } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "562" }, "respuesta": { "datos": { "resultado": { "bexigetercero": "T", "bexigevendedor": "T", "bpermitenoiva": "F", "bpermiteedicionliquidacion": "F", "bpermiteconfigprecio": "F", "bactivarcfgcomisionesvendedor": "T", "bpermitereferenciasfactura": "F", "bpermiteperfilparticularfactura": "F", "bvercfgcomisionesvendedorfactura": "F", "bmodificarcfgcomisionesvendedorfactura": "F", "finicomisiones": "01-01-2016", "qprecisiondecimales": "2", "sfieldnameirecurso": "irecurso", "iccdef": "", "bdescuentoventas": "T", "bcalculariva": "T", "bviewntercero": "F", "bpermitiralquilerelemcontrol": "F", "listaconfigcolproductos": [ "", "T|F||||", "T|F||||", "", "T|F||||", "", "", "", "", "", "", "", "", "" ] } } } } ] }
{ "result": [ { "encabezado": { "resultado": "true", "imensaje": "", "mensaje": "", "tiempo": "562" }, "respuesta": { "datos": { "resultado": { "icc": "3VEN", "iinventario": "1", "irecurso": "SSDMP1", "nrecurso": "DISCO DURO MP 240GB SSD", "nunidad": "", "itiporec": "", "qproducto": "2.0000", "mprecio": "345000.0000", "qporcdescuento": "0.0000", "mvrtotal": "690000.0000", "sobserv": "", "qporciva": "16.0000", "fhini": "12/30/1899", "fhfin": "12/30/1899", "dato1": "", "dato2": "", "dato3": "", "dato4": "", "dato5": "", "dato6": "", "valor1": "0.0000", "valor2": "0.0000", "valor3": "0.0000", "valor4": "2.5000", "qproducto2": "2.0000" } } } } ] }
Nombre parámetro Tipo Descripción
encabezado JSON

Json que contiene en su interior los siguientes datos:

resultado (varchar): Retorna true siempre que la petición se ejecute satisfactoriamente.
imensaje (varchar): Código del mensaje de eventualidad o error en caso de presentarse.
mensaje (varchar): Mensaje de eventualidad o error en caso de presentarse.
tiempo (varchar): Tiempo que se tardó el Agente en resolver la petición, este tiempo está dado en milisegundos.

respuesta JSON

Json que contiene en su interior el arreglo de objetos “datos” que se describe a continuación:

datos (objeto): objeto cuya llave corresponde al código del tipo de operación y el valor corresponde a la cantidad de operaciones existente.

La documentación de los tipos de operación existentes en el sistema se encuentra en el documento “TiposDeOperacion” de la zona de “Documentación de apoyo”.

Para esta función se pueden presentar las siguientes eventualidades o errores:
  • 0: Error en la aplicación, errores no controlados.
  • 1: Mensaje que le indica al usuario que debe corregir errores (errores controlados).
  • 40: Usuario no logueado.
Un ejemplo del JSON que retorna la función cuando se genera una eventualidad es el siguiente:

{ "result":[{ "encabezado":{"resultado":"false","imensaje":"40","mensaje":"Usuario no logueado."}, "respuesta":{"datos":""} }] }

©2016 InSoft Todos los derechos reservados.