VENT_SAD_03_Órdenes Servicio a Domicilio - Manuales
Manuales POS
Audiencia
Este documento está pensado para ser consumido por los equipos de:
Soporte Farmax OR (Niveles 1 y 2)
Equipo de desarrollo TI (Farmacias del Ahorro y proveedor externo)
Descripción general
Impacto a la operación
La operación no se ve afectada directamente ya que a pesar de esta incidencia se pudo seguir operando con normalidad.
Criticidad
Alto |
|
Medio |
x |
Bajo |
Sistemas/módulos involucrados
POS
Precondiciones
Aquí se debe especificar el nivel de acceso requerido por cada sistema (aplicativo o base de datos), indicando el rol o perfil necesario para para el diagnóstico y/o solución del incidente.
POSDB_OR |
Usuario y contraseña para acceder |
Procedimiento de diagnóstico
Paso 1: Para comenzar con el análisis de la incidencia se procede a revisar la descripción del ticket, la investigación y los archivos anexados si es que los hay, esto con el objetivo de comprender lo mejor posible el problema reportado.
Paso 2: Se comienza revisando el log del monedero del servidor WSC para identificar el request y el response de Origis respecto a la venta reportada y se encuentra lo siguiente:
Request:
<s:Header>
<Action s:mustUnderstand="1" xmlns="http://schemas.microsoft.com/ws/2005/05/addressing/none">https://pos.monederodelahorro.net/online2/getPuntosProductos</Action>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<getPuntosProductos xmlns="https://pos.monederodelahorro.net/online2/">
<sTarjeta>9600043632209</sTarjeta>
<sSucId>1106</sSucId>
<sCajaId>22</sCajaId>
<sTerminalId>147136</sTerminalId>
<sSessionId>13319619215</sSessionId>
<sArticulos>7503006569890,3,45,135|7502276850844,1,78.99994400,78.99994400</sArticulos>
<sAuthCode>d98c9ff72fb6dbd0843d61e81bcdb2bd</sAuthCode>
</getPuntosProductos>
</s:Body>
</s:Envelope>
Response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<s:Header xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" />
<soap:Body>
<getPuntosProductosResponse xmlns="https://pos.monederodelahorro.net/online2/">
<getPuntosProductosResult>
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="FirstTable">
<xs:complexType>
<xs:sequence>
<xs:element name="SESSION_ID" type="xs:decimal" minOccurs="0" />
<xs:element name="ARTICULOS" type="xs:string" minOccurs="0" />
<xs:element name="MSGERR" type="xs:int" minOccurs="0" />
<xs:element name="MENSAJE" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<NewDataSet xmlns="">
<FirstTable diffgr:id="FirstTable1" msdata:rowOrder="0">
<SESSION_ID>13319619215</SESSION_ID>
<ARTICULOS>7503006569890,3,0,1,0,77809,0,0,0|7502276850844,1,0,1,0,86246,0,0,0</ARTICULOS>
<MSGERR>0</MSGERR>
<MENSAJE>Su compra participará en el programa de lealtad de Monedero del Ahorro, en el cual no hay devoluciones. Felicidades!, Usted obtuvo los siguientes productos gratis:
7502276850844 G AHORRO COLAGENO HIDROLIZADO 30CAP
7503006569890 G AHORRO DICLOFENACO GEL 1 G C.</MENSAJE>
</FirstTable>
</NewDataSet>
</diffgr:diffgram>
</getPuntosProductosResult>
</getPuntosProductosResponse>
</soap:Body>
</soap:Envelope>
Paso 3: Vemos en el elemento ARTICULOS del request, que se compraron 3 productos.
En el elemento ARTICULOS, del response, que se compraron 3 productos 7503006569890 y tiene una bonificación de 1 y que se comprará 1 producto 7502276850844 y tendrá una bonificación de 1. Estas bonificaciones se traducen en cantidad de producto de regalo sugerido para el producto en que está asignado. Al despachar la orden el sistema muestra los productos de regalo sugeridos, para su confirmación o rechazo.
En el código, vemos que, al confirmar, le suman la cantidad de producto de regalo sugerido a la cantidad de producto vendido.
Después de esto la venta queda así:
Producto con sku 7503006569890 con cantidad 4
Producto son sku 7502276850844 con cantidad 2
Si revisamos el request de la operación commitTrans del monedero vemos que se están enviando esas cantidades en el elemento <ARTICULOS>
Request:
<s:Header>
<Action s:mustUnderstand="1" xmlns="http://schemas.microsoft.com/ws/2005/05/addressing/none">https://pos.monederodelahorro.net/online2/commitTrans</Action>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<commitTrans xmlns="https://pos.monederodelahorro.net/online2/">
<sTarjeta>9600043632209</sTarjeta>
<sSucId>1106</sSucId>
<sCajaId>22</sCajaId>
<sTerminalId>147136</sTerminalId>
<sSessionId>13319619215</sSessionId>
<sArticulos>7503006569890,4,45,180|7502276850844,2,78.99994400,157.99988800</sArticulos>
<sNumTicket>V11062200031316</sNumTicket>
<sSaldoRedimido>0</sSaldoRedimido>
<sImporteTotal>337.9998</sImporteTotal>
<sFechaOperacion>20230704</sFechaOperacion>
<sEntregaDomicilio>2</sEntregaDomicilio>
<sFormaPago>0</sFormaPago>
<sAuthCode>d98c9ff72fb6dbd0843d61e81bcdb2bd</sAuthCode>
</commitTrans>
</s:Body>
</s:Envelope>
Response:
<s:Header xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" />
<soap:Body>
<commitTransResponse xmlns="https://pos.monederodelahorro.net/online2/">
<commitTransResult>
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="FirstTable">
<xs:complexType>
<xs:sequence>
<xs:element name="SESSION_ID" type="xs:string" minOccurs="0" />
<xs:element name="AUTORIZACION" type="xs:string" minOccurs="0" />
<xs:element name="ARTICULOS" type="xs:string" minOccurs="0" />
<xs:element name="SALDO_PUNTOS" type="xs:decimal" minOccurs="0" />
<xs:element name="SALDO_DESGLOSE1" type="xs:decimal" minOccurs="0" />
<xs:element name="SALDO_DESGLOSE2" type="xs:decimal" minOccurs="0" />
<xs:element name="ABONO_RECORDPROMOCION" type="xs:int" minOccurs="0" />
<xs:element name="LEYENDATICKET1" type="xs:string" minOccurs="0" />
<xs:element name="LEYENDATICKET2" type="xs:string" minOccurs="0" />
<xs:element name="LEYENDATICKET3" type="xs:string" minOccurs="0" />
<xs:element name="MSGERR" type="xs:int" minOccurs="0" />
<xs:element name="MENSAJE" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<NewDataSet xmlns="">
<FirstTable diffgr:id="FirstTable1" msdata:rowOrder="0">
<SESSION_ID>13319619215</SESSION_ID>
<AUTORIZACION>1442557066</AUTORIZACION>
<ARTICULOS>7503006569890,3,0,1,0,77809,0,0,0|7502276850844,1,0,1,0,86246,0,0,0</ARTICULOS>
<SALDO_PUNTOS>27.2054231600007</SALDO_PUNTOS>
<SALDO_DESGLOSE1>30.2040034400002</SALDO_DESGLOSE1>
<SALDO_DESGLOSE2>69.7959965599998</SALDO_DESGLOSE2>
<ABONO_RECORDPROMOCION>0</ABONO_RECORDPROMOCION>
<LEYENDATICKET1 />
<LEYENDATICKET2>Autorización: 178737359|Beneficios: |MONEDERO DEL AHORRO|1x 7502276850844 G AHORRO COLAGENO HIDROLI|OBSEQUIO||MONEDERO DEL AHORRO|1x 7503006569890 G AHORRO DICLOFENACO GEL |OBSEQUIO|</LEYENDATICKET2>
<LEYENDATICKET3>****************************************************|Record Promoción: e$30.2|Te faltan e$69.8 para ganar e$100.|****************************************************|</LEYENDATICKET3>
<MSGERR>0</MSGERR>
<MENSAJE />
</FirstTable>
</NewDataSet>
</diffgr:diffgram>
</commitTransResult>
</commitTransResponse>
</soap:Body>
</soap:Envelope>
Vemos que, en el response de commitTrans, en el elemento <ARTICULOS> lo desglosa de la siguiente forma:
En el código en la clase SaleManager.cs en el método CreateSaleDetailList() vemos que se quita de la venta la cantidad de regalo, pero esto no está sucediendo, y por eso la venta se quedó como :
Paso 4: Al confirmar los productos que son sugerencias de regalo, se agregan temporalmente a la venta, pero no como regalo; se agrega como si fuera vendido (parece que así funciona el mecanismo de enviarle al servicio de Origis todas las cantidades de producto como vendidos).
Se ejecuta el servicio de commitTrans del monedero, y después se debería quitar la cantidad que se agregó antes de consumir el servicio commitTrans.
El sistema no le quitó los productos que agregó como vendidos y que eran regalo.
Paso 5: Se procede a revisar las promociones en el log del monedero del servidor WSC el response de Origis en donde se muestran los códigos de promoción correspondientes a los sku. Esto se puede observar en la siguiente imagen:
Paso 6: Se procede a validar los códigos de promoción en el la base de datos POSDB_OR con la siguiente consulta:
WHERE codigoPromocion in (@promocion);
SELECT 'genPromocionesCupon', genPromocionesCupon.* FROM genPromocionesCupon
WHERE codigoPromocion in (@promocion);
SELECT 'genAgrupacionSucursalesPromociones', genAgrupacionSucursalesPromociones.* FROM genAgrupacionSucursalesPromociones
WHERE codigoPromocion in (@promocion);
SELECT 'genReglasPrecioPromocion', genReglasPrecioPromocion.* FROM genReglasPrecioPromocion
WHERE codigoPromocion in (@promocion);
SELECT 'genReglasPromocion', genReglasPromocion.* FROM genReglasPromocion
where codigoReglaPromocion in (
SELECT codigoReglaPromocion FROM genReglasPrecioPromocion
WHERE codigoPromocion in (@promocion));
SELECT 'genCondicionPromocion', genCondicionPromocion.* FROM genCondicionPromocion
where codigoCondicionPromocion in (
SELECT codigoCondicionPromocion FROM genReglasPrecioPromocion
WHERE codigoPromocion in (@promocion));
SELECT 'genCondicionPromocionDet', genCondicionPromocionDet.* FROM genCondicionPromocionDet
where codigoCondicionPromocion in (
SELECT codigoCondicionPromocion FROM genReglasPrecioPromocion
WHERE codigoPromocion in (@promocion));
SELECT 'genProductoscat', genProductoscat.*
FROM genProductoscat
where codigoProducto in (
SELECT codigoProducto
FROM genCondicionPromocionDet
where codigoCondicionPromocion in (
SELECT codigoCondicionPromocion FROM genReglasPrecioPromocion
WHERE codigoPromocion in (@promocion)))
SELECT 'genProductosCodigosRelacionadosCat', genProductosCodigosRelacionadosCat.* FROM genProductosCodigosRelacionadosCat
where codigoProducto in (
SELECT codigoProducto
FROM genCondicionPromocionDet
where codigoCondicionPromocion in (
SELECT codigoCondicionPromocion FROM genReglasPrecioPromocion
WHERE codigoPromocion in (@promocion)))
SELECT 'genReglasPromocionBeneficios', genReglasPromocionBeneficios.* FROM genReglasPromocionBeneficios
where codigoReglaPromocion in (
SELECT codigoReglaPromocion FROM genReglasPrecioPromocion
WHERE codigoPromocion in (@promocion));
Se puede observar que en el resultado de ambas promociones la mayoría de las tablas no tienen registros lo que nos indica que las promociones están mal configuradas a continuación se muestra un ejemplo de una promoción bien configurada:
Procedimiento de solución
Como se determinó en el proceso de diagnostico las promociones no están configuradas correctamente y por esa razón el POS no las esta aplicando provocando que los artículos que deberían ser regalados se estén cobrando, se procede a contestar el ticket en proactivanet con el siguiente mensaje:
Con gusto se brinda el apoyo, se identificó que la promoción está mal configurada lo que provoca que los puntos de venta no se aplique dicha promoción.
Se anexa documento de investigación INC 2023-243723 - PromocionesValidacion en donde se muestran los puntos a validar para estos casos.
Saludos.
Validación
No aplica.
Notificación de resolución
Especificar la lista de usuarios que deben ser notificados al momento que se ha confirmado la resolución de la incidencia.
Incidencias relacionadas
Glosario
Revisa el glosario del equipo de soporte de Farmacias del ahorro aqui
Schlagwörter
|
Neueste
CORTE_CAJA_06_Error en Orden SAD 6. Mai 2024
VENT_SAD_06_Linzaug 4 mg promoción de 4+1 17. April 2024
VENT_SAD_02_Órdenes Servicio a Domicilio 2. März 2024
VENT_SAD_04_Órdenes Servicio a Domicilio 13. Februar 2024
VENT_SAD_05_Órdenes Servicio a Domicilio 30. Januar 2024
VENT_SAD_ORDENES A DOMICILIO_01_FALLO AL REDIMIR FOLIO DE UN FACIENTE PROVENIENTE DE E-COMMERCE 16. Januar 2024
BONIFICACION_05_Productos Bonificados (Venta SAD) 9. Januar 2024
|
Beliebteste
VENT_SAD_05_Órdenes Servicio a Domicilio 3 Aufrufe
VENT_SAD_ORDENES A DOMICILIO_01_FALLO AL REDIMIR FOLIO DE UN FACIENTE PROVENIENTE DE E-COMMERCE 1 Aufruf
CORTE_CAJA_06_Error en Orden SAD 0 Aufrufe
VENT_SAD_02_Órdenes Servicio a Domicilio 0 Aufrufe
|