Invalid Date al consultar cortes. 

Asociado de caja general reporta que no puede consultar cortes de los cajeros 

Este escenario es uno más de los casos que se resuelven con POOL. 

Query: Balance verificación corte de cajero

DECLARE @Date datetime = '2024-07-17' --Dia de Operacion
DECLARE @Cashier int = 	40467                  --Employee  9995, 9997 
DECLARE @Emp int = (Select employeeno from employee where employeeno = @Cashier or payrollid = @Cashier)

--SP PARA FORZAR EL CORTE FINAL DE CAJERO ECOMMERCE
--exec spWithdrawalEccomerce '2023-03-06'
Select GETDATE() as 'HORA ACTUAL', 'CIERRE DE TIENDA', ProgStartTim, EOPStatus, AcctStatus, CurrentDate, CurRptDate, Progname,Lasttran,* FROM AcctPeriod order by getdate() desc

/* Cierre de caja general */
SELECT @@SERVERNAME AS 'Server Name'  
SELECT 'CIERRE CAJA GENERAL', * FROM STORE_FinalTenderTotals WHERE CAST(Date as date) = @Date

--update STORE_FinalTenderTotals set status = 'Approved' where date = '2023-12-24 18:37:05.133' and status = 'Reviewed'

--eliminar corte de caja general
--delete from STORE_FinalTenderTotals where date = '2024-04-16 22:25:18.453' and transmitted = 0
/* Conciliación de cajero */--4629
SELECT * FROM CashierBalances WHERE Date = @Date AND EmployeeNo = @Emp
--ELIMINAR CONCILIACION DE CAJERO--
--delete from cashierbalances where employeeno = 376 and date = '2024-06-27'
SELECT TABadge, JobTitle, * FROM Employee WHERE EMPLOYEENO = @Emp OR PayrollId = @Emp
/* Encabezado del corte */
SELECT * FROM STORE_Withdrawals WHERE Cast(Date as date) = @Date and EmployeeNo = @Emp

SELECT @@SERVERNAME AS 'Server Name'  
BEGIN	
SELECT TenderCode AS 'Tipo de pago', Cajas, Cortes--, convert(money,Cajas)-Isnull(convert(money,Cortes),0) 'Diferencia' 
FROM(

	/* Información de cortes */
	SELECT 
		CONCAT(DEN.TenderCode, ' - ', TN.[Description]) AS TenderCode,
		FORMAT(SUM(WDE.TotalPrice), 'C', 'en-us') AS Amount,
		'Cortes' AS Type
	FROM STORE_Withdrawals AS WD
		JOIN STORE_WithdrawalDenominations AS WDE ON WD.WithdrawalId = WDE.WithdrawalId
		JOIN STORE_Denominations AS DEN ON WDE.DenominationId = DEN.DenominationId
		JOIN TenderCntrl TN ON DEN.TenderCode = TN.TenderCode
	WHERE WD.WithdrawalId IN (SELECT WithdrawalId FROM STORE_Withdrawals WHERE EmployeeNo = @Emp)
		AND CAST(WD.Date as date) = @Date
	GROUP BY DEN.TenderCode, TN.[Description]

	UNION 

	/* Información de cajas */
	SELECT 
		CONCAT(TTE.TenderCode, ' - ', TN.[Description]) AS TenderCode,
		FORMAT(SUM(tte.TenderAmount), 'C', 'en-us') AS Amount,
		'Cajas' AS Type
	FROM TranTotal TT
		JOIN TranTender TTE on TT.TranNumber = TTE.TranNumber and TT.TranDate = TTE.TranDate and TT.RegisterID = TTE.RegisterID
		JOIN Employee AS EMP ON TT.EmployeeNo = EMP.EmployeeNo
		JOIN TenderCntrl TN ON TTE.TenderCode = TN.TenderCode
	WHERE TT.TranDate = @Date
		AND TT.EmployeeNo = @Emp
		AND TT.OperatMode = 0
		AND TT.RecType = 'N'
		AND TT.TypeOfSale NOT IN (3,49,88)
		AND TTE.TenderCode != 14
	GROUP BY TTE.TenderCode, TN.[Description]
) M
PIVOT
	(
		MAX(Amount) FOR Type in (Cajas,Cortes)
	) piv;
END


/* Detalle del corte final */
SELECT 'DETALLE DE CORTE FINAL', * FROM STORE_Withdrawaldenominations wd JOIN STORE_Withdrawals w ON wd.WithdrawalId = w.Withdrawalid
WHERE Cast(Date as date) = @Date and EmployeeNo = @Emp and w.DocumentType like '%final%'

/* Transacciones del cajero */
SELECT tt.posted, tt.Endtime, tt.RecType, tt.OperatMode, te.TranDate, tt.RegisterId, tt.TranNumber, tt.EmployeeNo, te.TenderCode, te.TenderAmount, SigSequence
FROM TranTotal tt LEFT JOIN TranTender te
ON te.TranDate = tt.TranDate and te.RegisterId = tt.RegisterId and te.TranNumber = tt.TranNumber
WHERE tt.TranDate = @Date and EmployeeNo = @Emp
ORDER BY EndTime

Procedemos a replicar el escenario en nuestro equipo y ubicar la opción que el cajero observa incorrecta, posteriormente aplicación un reciclado de pool, presionamos ctrl + f5 para borrar cache y ya se debería de ver correctamente la opción. 

Con el siguiente linea podemos consultar si ya pudo aprobar los cortes posteriores al pool

---informacion de parciales todos los asociados
/*
SELECT @@SERVERNAME AS 'Server Name'
SELECT * FROM STORE_Withdrawals WHERE CAST(Date AS DATE) = CAST(GETDATE() AS DATE)
ORDER BY AppDate DESC


--buscar por otras fechas.
--DECLARE @Date datetime = '2024-06-07' --Dia de Operacion
--SELECT * FROM STORE_Withdrawals WHERE Cast(Date as date) = @Date order by AppDate desc
*/

Si al aplicar el app pool no queda, podemos realizar un reinicio completo de sitio y solicitar al asociado que recargue la página del sms o bien que cierre sesión y vuelva a iniciar.

Loading

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *