¿Cómo obtener configuraciones para operación de "pedido a un cliente"?
GetConfigOprORD4 (datajson, controlkey, iapp, random) : json

Descripción

Esta función es la encargada de retornar la configuración de los campos de la operación de pedido, dicha configuración es asignada en el sistema ContaPyme / AgroWin en la opción “Configuración” de dicha operación.

Por cada campo retorna si es visible, requerido, de solo lectura, valor por defecto, etiqueta y su configuración cuando es un campo de tipo lista.
También retorna las opciones de configuración propias de la operación y la definición por defecto para las formas de cobro de la operación.

Para conocer los campos de la operación, consultar el documento: “DocJsonOprORD1” que se encuentra en la zona de “Documentación de apoyo”.

Resultado

Retorna un Json con la configuración de la operación de pedidodisponible para un usuario.
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.

itdsop: Identificador del tipo de documento de soporte por defecto de la operación.

{ "itdsop": "34" }
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/"GetConfigOprOrd4"/'; //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 = { "itdsop": "34" }; //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": "5" }, "respuesta": { "datos": { "cfg": { "bitdsopoprro": "F", "bsnumsopoprro": "F", "iclaseopr": "0", "biclaseoprro": "F", "bfsoportoprro": "F", "iccbase": "", "imonedadef": "10", "busarotramoneda": "F", "bimprimirdocsenpesos": "F", "banexosdespuesdefirma": "F", "bdescuentocotizaciones": "T", "bconfigprecio": "T", "bnoformatearcantidad": "F", "sobservenc": "COT02100", "sobservpie": "COT04100" }, "encabezado": { "svaloradic1": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "Valor 1", "itdlista": "1", "ncampofiltro": "", "ncatalogo": "", "beditable": "T" }, "svaloradic2": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "Valor 2", "itdlista": "1", "ncampofiltro": "", "ncatalogo": "", "beditable": "T" }, "svaloradic3": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "Valor 1", "itdlista": "1", "ncampofiltro": "", "ncatalogo": "", "beditable": "T" }, "svaloradic4": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "Valor 1", "itdlista": "1", "ncampofiltro": "", "ncatalogo": "", "beditable": "T" } }, "datosprincipales": { "init": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "ireferencia": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "ilistaprecios": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "1", "etiqueta": "" }, "bregvrunit": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "bregvrtotal": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "initvendedor": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "planeacionentrega": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "qdias": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "15", "etiqueta": "" }, "datosadicionales": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "icontactocliente": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "step_2": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "step_3": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" } }, "listaproductos": { "itiporec": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "nunidad": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "qporcdescuento": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "sobserv": { "bvisible": "T", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "dato1": { "bvisible": "F", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "Dato 1", "itdlista": "1", "ncampofiltro": "", "ncatalogo": "", "beditable": "T" }, "dato2": { "bvisible": "F", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "Dato 2", "itdlista": "1", "ncampofiltro": "", "ncatalogo": "", "beditable": "T" }, "dato3": { "bvisible": "F", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "Dato 3", "itdlista": "1", "ncampofiltro": "", "ncatalogo": "", "beditable": "T" }, "dato4": { "bvisible": "F", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "Dato 4", "itdlista": "1", "ncampofiltro": "", "ncatalogo": "", "beditable": "T" }, "valor1": { "bvisible": "F", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "valor2": { "bvisible": "F", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "valor3": { "bvisible": "F", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" }, "valor4": { "bvisible": "F", "blectura": "F", "brequerido": "F", "valorpordefecto": "", "etiqueta": "" } } } } } ] }
Descripción del JSON Ir arriba
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 objeto “datos”, éste a su vez contiene objetos con las secciones de información de la operación de cotización, cada una de estas secciones contiene los campos con su respectiva configuración.


cfg (objeto): Objeto que contiene las configuraciones adicionales que se deben tener en cuenta para el manejo de la operación de cotización al cliente, estas configuraciones pueden ser definidas por el usuario.
Las configuraciones de la operación de cotización son:

bitdsopoprro: Contiene T cuando no es posible modificar el tipo de documento de soporte en la operación y contiene F cuando si es posible modificarlo.

bsnumsopoprro: indica si el número de documento puede ser o no modificado. T: solo lectura. F: editable.

iclaseopr: Código de la clase de operación por defecto que se asignará a las nuevas operaciones de cotización que se creen en el sistema.

biclaseoprro: Contiene T cuando la clase de operación asignada para las nuevas operaciones de cotización, puede ser modificada por el usuario, y contiene F cuando no es posible modificar la clase de operación.

bfsoportoprro: Contiene T cuando la fecha de operación asignada para las nuevas operaciones de cotización, puede ser modificada por el usuario, y contiene F cuando no es posible modificar la fecha de la operación.

iccbase: código del centro de costos base por defecto para las operaciones donde aplique. Ej: movimiento contable.

imonedadef: Código de la moneda por defecto que se usará para las nuevas operaciones de cotización, de todas formas, al crear la operación se podrá modificar la moneda si así se requiere.

busarotramoneda: indica si por defecto se va a imprimir en otra moneda.

bimprimirdocsenpesos: indica si por defecto se va a imprimir la cotización en moneda local.

banexosdespuesdefirma: Contiene T cuando los anexos de la cotización se imprimirán después de la firma, y contiene F cuando los anexos se imprimirán antes de la firma.

bdescuentocotizaciones: Contiene T cuando está habilitado el campo de descuentos en el registro de los productos de la cotización.

bconfigprecio: Contiene T cuando es posible cambiar el modo de registro del precio del producto, es decir, registrar el precio unitario o el valor total.

bnoformatearcantidad: Contiene T cuando está deshabilitado el formato de la cantidad según la configuración regional.

sobservenc: texto por defecto para el encabezado.

sobservpie: texto por defecto para el pie de página.


encabezado (objeto): Objeto que contiene la configuración de los campos de: svaloradic1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, y 12. La llave el objeto es el nombre del campo y su valor contiene la configuración, así:

bvisible: Contiene T cuando el campo es visible en el formulario y F cuando no lo es.

blectura: Contiene T cuando el campo es de solo lectura (es decir, no se puede modificar) y F cuando no lo es.

brequerido: Contiene T cuando el campo es obligatorio en el formulario y F cuando es opcional.

etiqueta: contiene el nombre del campo definido por el usuario. Hay algunos campos que permiten configurar su nombre según las necesidades del usuario, en ese caso, este parámetro contendrá el nombre que definió el usuario para el campo.

valorpordefecto: valor por defecto configurado por el usuario para el campo.


Cuando el campo es de tipo lista, el objeto contendrá adicionalmente los siguientes campos:

itdlista: Código identificador del tipo de lista, influye en el tipo de campo que se debe presentar en el formulario. Los tipos son:

0: Edit – Corresponde a una caja de texto normal.

1: Autolista – Cuando la configuración retorne este tipo de lista, se debe llamar la función GetAutoLista de la clase TCatTerceros y enviar el nombre del campo para poder obtener los valores que se deben presentar en el listado, adicionalmente si ncampofiltro (que se describe más adelante) retorna algún valor, al llamar la función GetAutoLista se debe enviar dicho campo de filtro.

2: Autolistacatalogo – Corresponde a un campo de tipo selector, cuando llegue este tipo de lista se debe llamar la función GetListaSeleccion de la clase que llegue en el parámetro “ncatalogo”.

ncampofiltro: Nombre del campo de filtro que se debe aplicar al obtener la autolista, esto cuando el itdlista es 1.

ncatalogo: nombre de la clase de la cual se debe llamar la función GetListaSelección cuando el itdlista es 2.

beditable: aplica para cuando el itdlista es 1, cuando contenga F indica que el campo debe ser un combobox (pues el campo corresponde a una tabla de usuario) y cuando contenga T indica que el campo debe ser un combobox editable.


datosprincipales (objeto): Objeto que contiene la configuración de los campos principales de la operación, cada campo contiene la configuración que se detalló para el objeto “encabezado”.
De este objeto es importante resaltar los siguientes campos:

step_2: Indica si el paso “Datos adicionales de la cotización” estará visible en el asistente de registro de la operación de cotización.

step_3: Indica si el paso “Observaciones” estará visible en el asistente de registro de la operación de cotización.


listaproductos (objeto): Objeto que contiene la configuración de los campos para el registro de productos de la operación, cada campo contiene la configuración que se detalló para el objeto “encabezado”.

EventualidadesIr arriba
Para esta función se pueden presentar las siguientes eventualidades o errores: 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.