Asociado reporta que un asociado dado de baja en el mismo día no realizo su corte final.
Existen situaciones donde por cuestiones operativas un asociado es dado de baja y no realizo su corte final, para ello debemos de validar que su baja no haya sido efectuada en sistema Active directory. Si en Active directory sigue activo (solicitar a SD que anexe cap) es cuestión de quitar su termdate de BD. De lo contrario será necesario solicitar al equipo de seguridad su reactivación.
Para estos casos donde no se hizo un corte final del cajero, por olvido, por renuncia o estos casos semejantes, INC0343769, si son por error u omisión de tienda hay que cancelarlos [después de ayudar a tienda].
Y Si el cajero en sus cortes ya está completo, es decir, no tiene sobrantes ni faltantes, se puede insertar un Final de 5c para que lo concilie tienda con este query, modificando Fecha y Cajero.
OJO: siempre y cuando el cajero NO ESTE deshabilitado en AD, si esta deshabilitada tienda deberá enviar el correo solicitando la activación.
Query: Balance – Insert Final 5c
DECLARE @Date datetime = '20230928' --Dia de Operacion
DECLARE @Cashier int = 585048 -- Employee
DECLARE @Emp int = (Select employeeno from employee where employeeno = @Cashier or payrollid = @Cashier)
DECLARE @ExistWithdrawalId INT = 0
DECLARE @DocumentType nvarchar(7) = 'final'
DECLARE @Status nvarchar(7) = 'pending';
SELECT TABadge, JobTitle, * FROM Employee WHERE EMPLOYEENO = @Emp OR PayrollId = @Emp
--INSERT INTO STORE_Withdrawals([Date],PartialNumber,[STATUS],DocumentType,Comment,EmployeeNo,Transmitted) SELECT @Date,1,@Status,@DocumentType,'.',@Emp,0;
SELECT TOP 1 @ExistWithdrawalId = WithdrawalId FROM STORE_Withdrawals WHERE [STATUS] = @Status AND
[Date] = @Date AND DocumentType = @DocumentType AND EmployeeNo = @Emp
--INSERT INTO STORE_WithdrawalDenominations (WithdrawalId,DenominationId,Quantity,TotalPrice,Description,TranNumber,RegisterID) SELECT @ExistWithdrawalId,1,1,0.05,Null,Null,Null
SELECT * FROM STORE_Withdrawals WHERE Cast(Date as date) = @Date and EmployeeNo = @Emp
SELECT wd.* FROM STORE_Withdrawaldenominations wd JOIN STORE_Withdrawals w ON wd.WithdrawalId = w.Withdrawalid
WHERE Cast(Date as date) = @Date and EmployeeNo = @Emp AND DocumentType = @DocumentType
Query: Consulta de roles asignados a usuario
select Substring(@@servername,6,4) 'Tienda'
DECLARE @User NVARCHAR(10) = '1069793'
--select * from employee where employeeno = 21556
Declare @Rol table (id nvarchar(10),RoleID nvarchar(max))
Select JobClass,Position,Tabadge,TermDate,employeeno, PosAuth,JobTitle, PayrollID, FirstName, LastName, RightHanded,EmpStatus,DatePswdChng, Password, * from Employee where Payrollid = @User
--Consulta de Roles por Usuario
SELECT u.UserName, r.Name, ur.[ExpireDate],r.code,ur.userid,ur.Roleid,u.PasswordHash
FROM AspNetUserRoles ur
INNER JOIN AspNetUsers u ON ur.UserId = u.Id AND u.Id = (SELECT id FROM AspNetUsers WHERE username = @User)
INNER JOIN AspNetRoles r ON ur.RoleId = r.Id
--Permisos menu nuevo
Select anr.Name,sm.* from RoleMenu rm (NoLock)
Left Join StoreMenu sm (NoLock) on sm.menuid = rm.menuid
LEFT JOIN AspNetRoles anr (NoLock) on rm.roleid = anr.Id
Where rm.roleid in (Select RoleID From @Rol)
-- Tabla de Logs, error con el usuario DECLARE @User NVARCHAR(10) = '1008536'
Select 'Systemlog E' 'Systemlog E',* From thd_sms_logs.Dbo.Systemlog NoLock where logdate >= convert(date,getdate()) and progname = 'auth' and logmessage like Concat('%',@user,'%') Union All Select 'Systemlog E',* From Systemlog NoLock where logdate >= convert(date,getdate()) and progname = 'auth' and logmessage like Concat('%',@user,'%')
-- Tabla de Logs, error al procesar empleado DECLARE @User NVARCHAR(10) = '1008536'
Select 'Systemlog P' 'Systemlog P', * From thd_sms_logs.Dbo.Systemlog NoLock where logdate >= convert(date,getdate()) and progname = 'spEmployeeProvisioning' Union all Select 'Systemlog P', * From Systemlog NoLock where logdate >= convert(date,getdate()) and progname = 'spEmployeeProvisioning'
-------------------- Tabla de XML enviados de ITX a SMS para Empleados
Select 'InboundMessages' 'InboundMessages', * from thd_sms_logs.Dbo.InboundMessages NoLock where InterfaceID = 'I109' and payload like concat('%',@user,'%') Union All Select 'InboundMessages' 'InboundMessages', * from InboundMessages NoLock where InterfaceID = 'I109' and payload like concat('%',@user,'%')
/********************DELETE DE ROLES POR USERID y ROLEID*/
Buscamos al usuario y vemos su fecha de termdate, en caso de no tenerla significa que su baja aún no se ha realizado y en ese caso gerencia puede resetear su password y caja general hacer el final, si vemos que ya está efectuada, reactivamos el usuario de la siguiente forma, seteamos el tabadge con 10 veces el 0, y el termdate null.

---update Employee set tabadge = '', termdate = '2024-05-04' where Payrollid = 1058770 and Payrollid = 1058770
Posterior a ello gerencia resetea password y caja general crear el corte final.
En caso de que en active directory ya este inactivo se genera el task a Seguridad y se les notifica vía correo electrónico.


Una vez activo gerencia resetea password y caja general crear el corte final.