Untitled
unknown
plain_text
a year ago
19 kB
8
Indexable
Can't Execute this statement: ALTER PROCEDURE [dbo].[sp_M_TND_SyncroContrattoCFT] /* 00 Procedure : sp_M_TND_SyncroContrattoCFT 01 Class : 1000000000 02 Level : ** 03 Author : IDEA INFORMATICA - Giorgio Cappi 04 Date : Sep 22, 2020 05 Version : 3.1.1 06 Purpose : Aggiorna 07 Input : 00 ID contratto da syncronizzare 08 Output : 09 Returns : 0 Tutto Okay 09 : 1 09 : 2 10 Remarks : 10 : 10 26/05/2016 - GN 10 Aggiunto parametro in input facoltativo per Tipo Contratto, utilizzato 10 per DMX e GAER nel caso di duplicazione da Contratto di Gruppo a Contratto Nuovo 10 02/01/2020 - MG 10 è stato inserito il liquidatore nella duplicazione dei premi */ /*PINI*/ @DaSyncroID char(7) /*PEND*/ /*END*/ AS SET NOCOUNT ON --------------------------- --M: INI Gestione DEBUGGER --------------------------- Declare @Debug int -- 0=Debugger NON ATTIVO, 1=Debugger ATTIVO Declare @Module varchar(32) Declare @Function varchar(64) Declare @Infos varchar(2048) SET @Module = 'sp_M_TND_SyncroContrattoCFT' EXEC @Debug = sp_XGetDebugParam 'ON' --------------------------- --M: END Gestione DEBUGGER --------------------------- ---------------------------------- --M: Se richiesto, gestisce DEBUG ---------------------------------- IF @Debug = 1 begin SET @Function = 'ENTER SP' SET @Infos = 'BEGIN Input Params: ' + 'ID contratto da duplicare =[' + isnull(convert(varchar, @DaSyncroID) ,'<NULL>') + '],' EXEC sp_XLOG @Module, @Function, @Infos end declare @vbBlack int declare @vbBlue int declare @vbRed int declare @vbGreen int declare @vbYellow int declare @vbCyan int set @vbBlack = 0 set @vbRed = 255 set @vbBlue = 16711680 set @vbGreen = 65280 set @vbYellow = 65535 set @vbCyan = 16776960 Declare @Ret integer /*Campi di ContrattiForTes*/ Declare @cftID char(7) Declare @cftTipoAnag char(1) Declare @cftUnita varchar(6) Declare @cftDestinazione char(3) Declare @cftDataInizio datetime Declare @cftDataFine datetime Declare @cftTipoContratto char(2) Declare @cftAreaContratto char(2) Declare @cftMarchio char(4) Declare @cftMesiGaranzia smallint Declare @cftFStato smallint Declare @cftDiGruppo smallint Declare @cftElencoFornitori smallint /*Campi di PremiForTes*/ Declare @pftContrattoForTes char(7) Declare @pftIDPremioFor char(8) Declare @pftDescrizione varchar(60) Declare @pftDataInizio datetime Declare @pftDataFine datetime Declare @pftValoreConcordato money Declare @pftModoMonetizzazione smallint Declare @pftTipoPremio char(2) Declare @pftModoLiquidazione smallint Declare @pftFGiustificativo smallint Declare @pftFStato smallint Declare @pftMarchio char(4) Declare @pftPeriodoLiquidazione smallint Declare @pftDataElaborazione datetime Declare @pftTotaleImponibile money Declare @pftTotaleQuantita money Declare @pftTotalePagato money Declare @pftTotalePremio money Declare @pftTargetFor money Declare @pftVenditeTotali money Declare @pftFlagDefinitivo smallint Declare @pftFNettoTrasporto smallint Declare @pftFNettoCassa smallint Declare @pftFNettoRae smallint Declare @pftFNettoSiae smallint Declare @pftNettoPFF smallint Declare @pftNettoPremioGruppo smallint Declare @pftDataDecorrenza datetime Declare @pftPVariazione real Declare @pftFStatoPremioCli smallint Declare @pftElencoFornitori smallint Declare @pftPPremioCli real Declare @pftDataEsecuzione datetime Declare @pftTotaleInPromo money Declare @pftFStatoPremioFor smallint Declare @pftImponibileCalcolo money Declare @pftTotaleImponibileNetto money Declare @pftFTipoElaborazione smallint Declare @pftFNettoTrasportoCli smallint Declare @pftFNettoCassaCli smallint Declare @pftPAddTraspVir real Declare @pftPScontoCassaVir real Declare @pftLiquidatore char(6) Declare @pftTargetRaggiunto money Declare @pftTargetDefinitivo money Declare @pftFTargetSuperato smallint Declare @DaSyncroIDPremioFor char(8) /*Fase 1: Inserimento tavola ContrattiForTes */ INSERT INTO OASI003..ContrattiForTes ( cftID ,cftTipoAnag ,cftUnita ,cftDestinazione ,cftDataInizio ,cftDataFine ,cftTipoContratto ,cftAreaContratto ,cftMarchio ,cftMesiGaranzia ,cftFStato ,cftDiGruppo ,cftElencoFornitori ) SELECT CFT001.cftID ,CFT001.cftTipoAnag ,CFT001.cftUnita ,CFT001.cftDestinazione ,CFT001.cftDataInizio ,CFT001.cftDataFine ,CFT001.cftTipoContratto ,CFT001.cftAreaContratto ,CFT001.cftMarchio ,CFT001.cftMesiGaranzia ,CFT001.cftFStato ,CFT001.cftDiGruppo ,CFT001.cftElencoFornitori FROM ContrattiForTes CFT001 WITH(NOLOCK) LEFT OUTER JOIN OASI003..ContrattiForTes CFT003 (NOLOCK) ON CFT003.cftID = CFT001.cftID WHERE CFT001.cftID = @DaSyncroID AND CFT003.cftID IS NULL /*Fase 2: Inserimento tavola ContrattiForLivelli */ INSERT INTO OASI003..ContrattiForLivelli ( cflID ,cflLivelloMag ) SELECT CFL001.cflID ,CFL001.cflLivelloMag FROM ContrattiForLivelli CFL001(NOLOCK) LEFT OUTER JOIN OASI003..ContrattiForLivelli CFL003 (NOLOCK) ON CFL003.cflID = CFL001.cflID AND CFL003.cflLivelloMag = CFL001.cflLivelloMag WHERE CFL001.cflID = @DaSyncroID AND CFL003.cflID IS NULL /*Fase 3: Inserimento tavola ContrattiForFPag */ INSERT INTO OASI003..ContrattiForFPag ( cffID ,cffFPag ,cffCScontoCassa ,cffPScontoCassa ,cffFPreferenza ,cffMarchio ) SELECT CFF001.cffID ,CFF001.cffFPag ,CFF001.cffCScontoCassa ,CFF001.cffPScontoCassa ,CFF001.cffFPreferenza ,CFF001.cffMarchio FROM ContrattiForFPag CFF001 (NOLOCK) LEFT OUTER JOIN OASI003..ContrattiForFPag CFF003 (NOLOCK) ON CFF003.cffID = CFF001.cffID AND CFF003.cffFPag = CFF001.cffFPag WHERE CFF001.cffID = @DaSyncroID AND CFF003.cffID IS NULL /*Fase 4: Inserimento tavola ContrattiForScontiFissi */ INSERT INTO OASI003..ContrattiForScontiFissi ( cfsID ,cfsLivelloMag ,cfsSottofamiglia ,cfsMarchio ,cfsCatenaSconti ,cfsSconto ,cfsCScontiProm ,cfsPScontiProm ,cfsBonifico ,cfsCScontoCassa ,cfsPScontoCassa ,cfsCAddTrasp ,cfsPAddTrasp ,cfsVAddTrasp ,cfsCPremioFP ,cfsPPremioFP ,cfsVPremioFP ,cfsCScontiExtra ,cfsPScontiExtra ,cfsVScontiExtra ,cfsCScontiNC ,cfsPScontiNC ,cfsVScontiNC ) SELECT CFS001.cfsID ,CFS001.cfsLivelloMag ,CFS001.cfsSottofamiglia ,CFS001.cfsMarchio ,CFS001.cfsCatenaSconti ,CFS001.cfsSconto ,CFS001.cfsCScontiProm ,CFS001.cfsPScontiProm ,CFS001.cfsBonifico ,CFS001.cfsCScontoCassa ,CFS001.cfsPScontoCassa ,CFS001.cfsCAddTrasp ,CFS001.cfsPAddTrasp ,CFS001.cfsVAddTrasp ,CFS001.cfsCPremioFP ,CFS001.cfsPPremioFP ,CFS001.cfsVPremioFP ,CFS001.cfsCScontiExtra ,CFS001.cfsPScontiExtra ,CFS001.cfsVScontiExtra ,CFS001.cfsCScontiNC ,CFS001.cfsPScontiNC ,CFS001.cfsVScontiNC FROM ContrattiForScontiFissi CFS001(NOLOCK) LEFT OUTER JOIN OASI003..ContrattiForScontiFissi CFS003 (NOLOCK) ON CFS003.cfsID = CFS001.cfsID AND CFS003.cfsLivelloMag = CFS001.cfsLivelloMag AND CFS003.cfsSottofamiglia = CFS001.cfsSottofamiglia AND CFS003.cfsMarchio = CFS001.cfsMarchio WHERE CFS001.cfsID = @DaSyncroID AND CFS003.cfsID IS NULL /*DestinazioniRiferimentiOggetti NON Syncro*/ /*ContrattiForAnnotazioni NON duplicato*/ /*ContrattiForScansioni NON duplicato*/ /*ContrattiForTrasporti NON Syncro*/ /*Fase 7: Inserimento tavola ContrattiForAddebiti */ INSERT INTO OASI003..ContrattiForAddebiti ( cfdID ,cfdNRiga ,cfdZona ,cfdCAddTrasp ,cfdPAddTrasp ,cfdVAddTrasp ,cfdNota ) SELECT CFD001.cfdID ,CFD001.cfdNRiga ,CFD001.cfdZona ,CFD001.cfdCAddTrasp ,CFD001.cfdPAddTrasp ,CFD001.cfdVAddTrasp ,CFD001.cfdNota FROM ContrattiForAddebiti CFD001(NOLOCK) LEFT OUTER JOIN OASI003..ContrattiForAddebiti CFD003 (NOLOCK) ON CFD003.cfdID = CFD001.cfdID AND CFD003.cfdNRiga = CFD001.cfdNRiga WHERE CFD001.cfdID = @DaSyncroID AND CFD003.cfdID IS NULL /*Fase 8: Inserimento tavola ContrattiForFornitori */ INSERT INTO OASI003..ContrattiForFornitori ( cfxID ,cfxFornitore ,cfxDestinatario ) SELECT CFX001.cfxID ,CFX001.cfxFornitore ,CFX001.cfxDestinatario FROM ContrattiForFornitori CFX001 (NOLOCK) LEFT OUTER JOIN OASI003..ContrattiForFornitori CFX003 (NOLOCK) ON CFX003.cfxID = CFX001.cfXID AND CFX003.cfxFornitore = CFX001.cfxFornitore AND CFX003.cfxDestinatario = CFX001.cfxDestinatario WHERE CFX001.cfxID = @DaSyncroID AND CFX003.cfxID IS NULL /*Creo un cursore su tutti premi presenti per quel contratto Successivamente per ogni premio presente effetto un ciclo per inserire il nuovo premio */ Declare curPremiDaDuplicare CURSOR FOR SELECT pftIDPremioFor FROM PremiForTes(NOLOCK) WHERE pftContrattoForTes = @DaSyncroID ORDER BY pftContrattoForTes, pftIDPremioFor open curPremiDaDuplicare while 1=1 begin fetch next from curPremiDaDuplicare into @DaSyncroIDPremioFor if @@fetch_status <0 break /*M: Controllo EOF*/ /*Fase 9: Inserimento tavola PremiForTes */ INSERT INTO OASI003..PremiForTes ( pftContrattoForTes ,pftIDPremioFor ,pftDescrizione ,pftDataInizio ,pftDataFine ,pftValoreConcordato ,pftModoMonetizzazione ,pftTipoPremio ,pftModoLiquidazione ,pftFGiustificativo ,pftFStato ,pftMarchio ,pftPeriodoLiquidazione ,pftDataElaborazione ,pftTotaleImponibile ,pftTotaleQuantita ,pftTotalePagato ,pftTotalePremio ,pftTargetFor ,pftVenditeTotali ,pftFlagDefinitivo ,pftFNettoTrasporto ,pftFNettoCassa ,pftFNettoRae ,pftFNettoSiae ,pftNettoPFF ,pftNettoPremioGruppo ,pftDataDecorrenza ,pftPVariazione ,pftFStatoPremioCli ,pftElencoFornitori ,pftPPremioCli ,pftDataEsecuzione ,pftTotaleInPromo ,pftFStatoPremioFor ,pftImponibileCalcolo ,pftTotaleImponibileNetto ,pftFTipoElaborazione ,pftFNettoTrasportoCli ,pftFNettoCassaCli ,pftPAddTraspVir ,pftPScontoCassaVir -- ,pftLiquidatore ,pftTargetRaggiunto ,pftTargetDefinitivo ,pftFTargetSuperato ) SELECT PFT001.pftContrattoForTes ,PFT001.pftIDPremioFor ,PFT001.pftDescrizione ,PFT001.pftDataInizio ,PFT001.pftDataFine ,PFT001.pftValoreConcordato ,PFT001.pftModoMonetizzazione ,PFT001.pftTipoPremio ,PFT001.pftModoLiquidazione ,PFT001.pftFGiustificativo ,PFT001.pftFStato ,PFT001.pftMarchio ,PFT001.pftPeriodoLiquidazione ,PFT001.pftDataElaborazione ,PFT001.pftTotaleImponibile ,PFT001.pftTotaleQuantita ,PFT001.pftTotalePagato ,PFT001.pftTotalePremio ,PFT001.pftTargetFor ,PFT001.pftVenditeTotali ,PFT001.pftFlagDefinitivo ,PFT001.pftFNettoTrasporto ,PFT001.pftFNettoCassa ,PFT001.pftFNettoRae ,PFT001.pftFNettoSiae ,PFT001.pftNettoPFF ,PFT001.pftNettoPremioGruppo ,PFT001.pftDataDecorrenza ,PFT001.pftPVariazione ,PFT001.pftFStatoPremioCli ,PFT001.pftElencoFornitori ,PFT001.pftPPremioCli ,PFT001.pftDataEsecuzione ,PFT001.pftTotaleInPromo ,PFT001.pftFStatoPremioFor ,PFT001.pftImponibileCalcolo ,PFT001.pftTotaleImponibileNetto ,PFT001.pftFTipoElaborazione ,PFT001.pftFNettoTrasportoCli ,PFT001.pftFNettoCassaCli ,PFT001.pftPAddTraspVir ,PFT001.pftPScontoCassaVir -- ,pftLiquidatore ,PFT001.pftTargetRaggiunto ,PFT001.pftTargetDefinitivo ,PFT001.pftFTargetSuperato FROM PremiForTes PFT001 WITH (NOLOCK) LEFT OUTER JOIN OASI003..PremiForTes PFT003 (NOLOCK) ON PFT003.pftContrattoForTes = PFT001.pftContrattoForTes AND PFT003.pftIDPremioFor = PFT001.pftIDPremioFor WHERE PFT001.pftContrattoForTes = @DaSyncroID AND PFT001.pftIDPremioFor = @DaSyncroIDPremioFor AND PFT003.pftContrattoForTes IS NULL /*Fase 10: Inserimento tavola PremiForArticoli */ INSERT INTO OASI003..PremiForArticoli ( pfaIDPremioFor ,pfaLivelloMag ,pfaSottofamiglia ,pfaArticolo ,pfaFEsclusione ,pfaFEscludiPremio ) SELECT PFA001.pfaIDPremioFor ,PFA001.pfaLivelloMag ,PFA001.pfaSottofamiglia ,PFA001.pfaArticolo ,PFA001.pfaFEsclusione ,PFA001.pfaFEscludiPremio FROM PremiForArticoli PFA001(NOLOCK) LEFT OUTER JOIN OASI003..PremiForArticoli PFA003 (NOLOCK) ON PFA003.pfaIDPremioFor = PFA001.pfaIDPremioFor AND PFA003.pfaLivelloMag = PFA001.pfaLivelloMag AND PFA003.pfaSottofamiglia = PFA001.pfaSottofamiglia AND PFA003.pfaArticolo = PFA001.pfaArticolo WHERE PFA001.pfaIDPremioFor = @DaSyncroIDPremioFor AND PFA003.pfaIDPremioFor IS NULL /*Fase 11: Inserimento tavola PremiForRegole */ INSERT INTO OASI003..PremiForRegole ( pfgIDPremioFor ,pfgNRiga ,pfgModoImponibile ,pfgValoreIniziale ,pfgValoreFinale ,pfgCPremio ,pfgPPremio ,pfgVPremio ,pfgModoApplP ,pfgFPrevisione ,pfgNota ,pfgCPremioOri ,pfgPPremioOri ,pfgVPremioOri ,pfgFlagForzTarget ) SELECT PFG001.pfgIDPremioFor ,PFG001.pfgNRiga ,PFG001.pfgModoImponibile ,PFG001.pfgValoreIniziale ,PFG001.pfgValoreFinale ,PFG001.pfgCPremio ,PFG001.pfgPPremio ,PFG001.pfgVPremio ,PFG001.pfgModoApplP ,PFG001.pfgFPrevisione ,PFG001.pfgNota ,PFG001.pfgCPremioOri ,PFG001.pfgPPremioOri ,PFG001.pfgVPremioOri ,PFG001.pfgFlagForzTarget FROM PremiForRegole PFG001 (NOLOCK) LEFT OUTER JOIN OASI003..PremiForRegole PFG003 (NOLOCK) ON PFG003.pfgIDPremioFor = PFG001.pfgIDPremioFor AND PFG003.pfgNRiga = PFG001.pfgNRiga WHERE PFG001.pfgIDPremioFor = @DaSyncroIDPremioFor AND PFG003.pfgIDPremioFor IS NULL /*Fase 12: Inserimento tavola PremiForPremiCli */ /*Viene eseguita direttamente dal trigger di inserimento PremioForTes con chiamata alla sp_M_ClientiAnagFTarget */ /*Fase 13: Inserimento tavola PremiForFornitori */ INSERT INTO OASI003..PremiForFornitori ( pffIDPremioFor ,pffFornitore ,pffDestinatario ,pffFLiquida ) SELECT PFF001.pffIDPremioFor ,PFF001.pffFornitore ,PFF001.pffDestinatario ,PFF001.pffFLiquida FROM PremiForFornitori PFF001 (NOLOCK) LEFT OUTER JOIN OASI003..PremiForFornitori PFF003 (NOLOCK) ON PFF001.pffIDPremioFor = PFF003.pffIDPremioFor AND PFF001.pffFornitore = PFF003.pffFornitore AND PFF001.pffDestinatario = PFF003.pffDestinatario WHERE PFF001.pffIDPremioFor = @DaSyncroIDPremioFor end CLOSE curPremiDaDuplicare DEALLOCATE curPremiDaDuplicare SELECT 0 as CodMsg /*significa Resultset vuoto*/ ,'Sincronizzazione eseguita' as TestoMsg ,0 as CodColore /*vbBlack*/ ,0 as Bold ,0 as Underline ------------ --M: USCITA ------------ IF @Debug = 1 begin SET @Function = 'EXIT SP' SET @Infos = 'Return(' + CONVERT(varchar, @Ret) + ') - ' EXEC sp_XLOG @Module, @Function, @Infos end RETURN (0) Error Number : 40002 Error Description : S0022: [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column name 'pftFTargetSuperato'. RDO Errors : S0022: [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column name 'pftTargetRaggiunto'. S0022: [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column name 'pftTargetDefinitivo'. S0022: [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column name 'pftFTargetSuperato'.
Editor is loading...
Leave a Comment