===== Principe de la requête GPS ===== Certains GPS ont remontés des écarts non constants entre les Etats GRECCO et la Comptabilité Générale, apparus depuis la montée de la V231. Suite à l’analyse de ces écarts, il a été constaté que certains montants d’un CRE Riche ne sont pas comptabilisés du fait de leur absence dans le FICCRE. Dans l’attente du correctif, la requête suivante permet de lister les flux non reçus dans LC et de justifier les écarts ou une partie. Amélioration de la requête : recherche les créances non envoyées à LC dans un CRE qui possède d'autres créances envoyées à LC ainsi que d'une créance seule dans un CRE non envoyée à LC. Paramètre Date à modifier avant exécution de la requête selon le besoin ===== Ci-dessous requête pour recherche en PCD/LCD ===== DECLARE GLOBAL TEMPORARY TABLE TXMRCRE_OK (COBQQRDJ CHAR(3), COCRERDJ CHAR(34) ) ON COMMIT PRESERVE ROWS; INSERT INTO SESSION.TXMRCRE_OK (COBQQRDJ,COCRERDJ) SELECT COBQQRDJ , COCRERDJ FROM TXMRCRE WHERE COBQQRDJ = 'CMR' AND COSTACRE = 'OK' ; CREATE INDEX IXTXMRCRE_OK ON SESSION.TXMRCRE_OK (COBQQRDJ ASC, COCRERDJ ASC) ; DECLARE GLOBAL TEMPORARY TABLE TXMRCRE_REJET (COBQQRDJ CHAR(3), COCRERDJ CHAR(34) ) ON COMMIT PRESERVE ROWS; INSERT INTO SESSION.TXMRCRE_REJET (COBQQRDJ,COCRERDJ) SELECT CRE.COBQQRDJ , CRE.COCRERDJ FROM TXMRCRE CRE WHERE CRE.COBQQRDJ = 'CMR' AND CRE.COSTACRE <> 'OK' AND NOT EXISTS (SELECT 1 FROM SESSION.TXMRCRE_OK CREOK WHERE CREOK.COBQQRDJ = CRE.COBQQRDJ AND CREOK.COCRERDJ = CRE.COCRERDJ) ; CREATE INDEX IXTXMRCRE_REJET ON SESSION.TXMRCRE_REJET (COBQQRDJ ASC, COCRERDJ ASC) ; SELECT DISTINCT FRT.TYINS , CHAR(';') ,FRT.NOINS , CHAR(';') ,FRT.NOUEC , CHAR(';') ,FRT.IDSOUCPT , CHAR(';') ,FRT.IDENTGES , CHAR(';') ,FRT.IDCODINS , CHAR(';') ,FRT.COTRITAB , CHAR(';') ,FRT.COGAR , CHAR(';') ,FRT.COPARCRE , CHAR(';') ,FRT.COCPN , CHAR(';') ,FRT.ANPER , CHAR(';') ,FRT.COPERREF , CHAR(';') ,FRT.COEVTGES , CHAR(';') ,FRT.DTREFFLXITS , CHAR(';') ,FRT.COSIGFLXITS , CHAR(';') ,CHAR(FRT.MTFLXITS) , CHAR(';') ,EFT.IDEVTGESTEC , CHAR(';') ,EFT.DTENVFLX , CHAR(';') ,EFT.IDFLXITS FROM TCMREFT EFT INNER JOIN TCMRFRT FRT ON FRT.IDFLXITS = EFT.IDFLXITS AND FRT.COPARCRE = EFT.COPARCRE AND FRT.COBQQ = EFT.COBQQAVA AND FRT.MTFLXITS <> 0 AND FRT.TYLIGCRE = 'C' AND FRT.INTRTCRE = 'O' WHERE EFT.DTENVFLX BETWEEN '01.12.2015' AND '31.12.2015' AND EFT.IDUTIMAJ <> 'INITCAEUR' AND EFT.IDPGMMAJ <> 'REQUETE' AND EFT.IDPGMMAJ <> 'REEMICRE' AND NOT EXISTS (SELECT 1 FROM TXMRPCD PCD , TXMRLCD LCD WHERE PCD.COBQQRDJ = EFT.COBQQAVA AND PCD.COCRERDJ = EFT.IDEVTGESTEC AND LCD.IDPAR = PCD.IDPAR AND LCD.DTJOU = PCD.DTJOU AND LCD.NOORDPIEECD = PCD.NOORDPIEECD AND LCD.COBQQRDJ = PCD.COBQQRDJ AND LCD.IDSOCCPT = PCD.IDSOCCPT AND LCD.COEMECPT = PCD.COEMECPT AND LCD.COLIVCPT = PCD.COLIVCPT AND LCD.COFONIMP = PCD.COFONIMP AND LCD.NOPIEECA = PCD.NOPIEECA AND LCD.MTLIGECD = ABS(FRT.MTFLXITS)) AND NOT EXISTS (SELECT 1 FROM SESSION.TXMRCRE_REJET CRE WHERE CRE.COBQQRDJ = EFT.COBQQAVA AND CRE.COCRERDJ = EFT.IDEVTGESTEC) WITH UR ; ===== Ci-dessous requête pour recherche en PC0/LC0 ===== DECLARE GLOBAL TEMPORARY TABLE TXMRCRE_OK (COBQQRDJ CHAR(3), COCRERDJ CHAR(34) ) ON COMMIT PRESERVE ROWS; INSERT INTO SESSION.TXMRCRE_OK (COBQQRDJ,COCRERDJ) SELECT COBQQRDJ , COCRERDJ FROM TXMRCRE WHERE COBQQRDJ = 'CMR' AND COSTACRE = 'OK' ; CREATE INDEX IXTXMRCRE_OK ON SESSION.TXMRCRE_OK (COBQQRDJ ASC, COCRERDJ ASC) ; DECLARE GLOBAL TEMPORARY TABLE TXMRCRE_REJET (COBQQRDJ CHAR(3), COCRERDJ CHAR(34) ) ON COMMIT PRESERVE ROWS; INSERT INTO SESSION.TXMRCRE_REJET (COBQQRDJ,COCRERDJ) SELECT CRE.COBQQRDJ , CRE.COCRERDJ FROM TXMRCRE CRE WHERE CRE.COBQQRDJ = 'CMR' AND CRE.COSTACRE <> 'OK' AND NOT EXISTS (SELECT 1 FROM SESSION.TXMRCRE_OK CREOK WHERE CREOK.COBQQRDJ = CRE.COBQQRDJ AND CREOK.COCRERDJ = CRE.COCRERDJ) ; CREATE INDEX IXTXMRCRE_REJET ON SESSION.TXMRCRE_REJET (COBQQRDJ ASC, COCRERDJ ASC) ; DECLARE GLOBAL TEMPORARY TABLE TXMRPC0_TEMP (COBQQRDJ CHAR(03) , COCRERDJ CHAR(34) , MTLIGECD DECIMAL(11, 0)) ON COMMIT PRESERVE ROWS ; INSERT INTO SESSION.TXMRPC0_TEMP (COBQQRDJ , COCRERDJ , MTLIGECD) SELECT PC0.COBQQRDJ , PC0.COCRERDJ , LC0.MTLIGECD FROM TXMRPC0 PC0 LEFT JOIN TXMRLC0 LC0 ON LC0.IDPAR = PC0.IDPAR AND LC0.DTJOU = PC0.DTJOU AND LC0.NOORDPIEECD = PC0.NOORDPIEECD AND LC0.COBQQRDJ = PC0.COBQQRDJ AND LC0.IDSOCCPT = PC0.IDSOCCPT AND LC0.COEMECPT = PC0.COEMECPT AND LC0.COLIVCPT = PC0.COLIVCPT AND LC0.COFONIMP = PC0.COFONIMP AND LC0.NOPIEECA = PC0.NOPIEECA WHERE PC0.COBQQRDJ = 'CMR' ; CREATE INDEX IXTXMRPC0_TEMP ON SESSION.TXMRPC0_TEMP (COBQQRDJ ASC , COCRERDJ ASC , MTLIGECD ASC) ; SELECT DISTINCT FRT.TYINS , CHAR(';') ,FRT.NOINS , CHAR(';') ,FRT.NOUEC , CHAR(';') ,FRT.IDSOUCPT , CHAR(';') ,FRT.IDENTGES , CHAR(';') ,FRT.IDCODINS , CHAR(';') ,FRT.COTRITAB , CHAR(';') ,FRT.COGAR , CHAR(';') ,FRT.COPARCRE , CHAR(';') ,FRT.COCPN , CHAR(';') ,FRT.ANPER , CHAR(';') ,FRT.COPERREF , CHAR(';') ,FRT.COEVTGES , CHAR(';') ,FRT.DTREFFLXITS , CHAR(';') ,FRT.COSIGFLXITS , CHAR(';') ,CHAR(FRT.MTFLXITS) , CHAR(';') ,EFT.IDEVTGESTEC , CHAR(';') ,EFT.DTENVFLX , CHAR(';') ,EFT.IDFLXITS FROM TCMREFT EFT INNER JOIN TCMRFRT FRT ON FRT.IDFLXITS = EFT.IDFLXITS AND FRT.COPARCRE = EFT.COPARCRE AND FRT.COBQQ = EFT.COBQQAVA AND FRT.MTFLXITS <> 0 AND FRT.TYLIGCRE = 'C' AND FRT.INTRTCRE = 'O' WHERE EFT.DTENVFLX BETWEEN '01.01.2015' AND '31.10.2015' AND EFT.IDUTIMAJ <> 'INITCAEUR' AND EFT.IDPGMMAJ <> 'REQUETE' AND EFT.IDPGMMAJ <> 'REEMICRE' AND NOT EXISTS (SELECT 1 FROM SESSION.TXMRPC0_TEMP PC0 WHERE PC0.COBQQRDJ = EFT.COBQQAVA AND PC0.COCRERDJ = EFT.IDEVTGESTEC AND PC0.MTLIGECD = ABS(FRT.MTFLXITS)) AND NOT EXISTS (SELECT 1 FROM SESSION.TXMRCRE_REJET CRE WHERE CRE.COBQQRDJ = EFT.COBQQAVA AND CRE.COCRERDJ = EFT.IDEVTGESTEC) WITH UR ;