LVHAVL ; SD-boekingsreeks opbouwen - analytische verdeling loonkost ; LVHAVL ; T1 ;Lijn ; T2 ; : Bestand niet geldig voor deze firma. T3 ; : Grootboekrekening XXX onbekend.;: Grootboekrekening XXX niet operationeel.; T5 ; : Analytische rekening XXX onbekend.;: Analytische rekening XXX niet operationeel.; T6 ;De boekingsreeksen werden aangemaakt. T7 ;Volgende problemen opgetreden: ; T8 ;1GV0930;1GH0303; T9 ;Analyt.verd.loonkost ; T10 ;Loonkost T11 ;Totaalbedrag verschillend van 0 T12 ;Analytische verdeling loonkost ; T13 ; Type boeking verschillend van D(ebet) of C(redit) ; T1F ;Line ; T2F ; : Fichier incorrect pour ce société. T3F ; : General Account XXX unknown.;: General Account XXX not operational.; T5F ; : Analytical Account XXX unknown.;: Analytical Account XXX not operational.; T6F ;The Booking Sequences are created successfully.; T7F ;The following problems occurred: ; T8F ;1GV0930;1GH0303; T9F ;Repartition analytique salaires ; T10F ;Frais salaires T11F ;Montant total n'est pas 0 T12F ;Analytische verdeling loonkost ; T13F ; Type boeking verschillend van D(ebet) of C(redit) ; T1E ;Line ; T2E ;: SD Company XXX unknown.; T3E ;: General Account XXX unknown.;: General Account XXX not operational.; T5E ;: Analytical Account XXX unknown.;: Analytical Account XXX not operational.; T6E ;The Booking Sequences are created successfully.; T7E ;The following problems occurred: ; T8E ;1GV0930;1GH0303; T9E ;Analytische verdeling loonkost ; T10E ;Loonkost T11E ;Totaalbedrag verschillend van 0 T12E ;Analytische verdeling loonkost ; T13E ; Type boeking verschillend van D(ebet) of C(redit) ; YZ Q SD(Q,QU,UI1,UREF,IMPTYPE) ; Bugetten uit Excel importeren ; Input: Q: Vennootschap ; QU: Initialen ; UI1: UI1 van ingelezen bestand ; UREF: Bestandslocatie (^DATI) ; IMPTYPE: 2de subscript ^DATI ; ; Output: 0\Foutboodschap ; of ; 1\GRIDID SD1 S $ZT="TRAP^cAN000" N @$$INITVAR^cAFVBA01("Q,QU,UI1,UREF,IMPTYPE") ; ; Controle parameters SD15 S R=1 I '$L($G(UI1))!'$L($G(UREF)) G SDZ ; ; Opzetten variabelen SD2 S SWERR=0 ; Switch fouten initialiseren op 0 K TABSD S SD=$P($T(@("T8"_QT)),U,$S($zu(5)="ADMIN1":2,1:3)) S TABSD(SD)=Q ; ; Bestand lezen SD3 D KHULP S VNR=9,LIJN="" SD31 S VNR=$O(@UREF@(VNR)) G:'$L(VNR) SD4 S LN=^(VNR),LIJN=LIJN+1 ; ; Opvullen nodig gegevens S ARA=$p($E(LN,10,31)," ",2) ; Analytische rek. I $L(ARA) S ARA=ARA_"000 " S AR=$P($E(LN,10,31)," ") ; Grootboekrekening I $L(AR) S AR=AR_" " S CD=$E(LN,32) I CD'="C",CD'="D" D ERR($P($T(@("T1"_QT)),U,2)_LIJN_$P($T(@("T13"_QT)),U,2),1) S ERR=1 G SD31 S BE=$E(LN,63,73),BE=$TR(BE," ",""),BE=BE/100 I CD="C" S BE=BE*-1 ; bedrag in euro S SD=$E(LN,107,113),SD=$TR(SD," ","") ; aansluitingsnummer S JM=$E(LN,118,121) ; jjmm S I=$$DC^cAFD1("01."_$E(JM,3,4)_"."_$E(JM,1,2)),BP=$E(I,1,4)_"."_$E(I,5,6) S TOT(BP)=$G(TOT(BP))+BE ; bijhouden totaal ; ; Controle Firma ; Indien er een onbekende firma is de fout negeren en de firma niet verwerken + volgende firma ophalen en file verder verwerken (Zie taak 20571 voor meer info) SD32 I '$D(TABSD(SD)) D ERR($P($T(@("T1"_QT)),U,2)_LIJN_$$REPL^cAFA10($P($T(@("T2"_QT)),U,2),"XXX",SD),1) S SWERR=1 G SD31 ; ; Controle Grootboekrekening SD34 I '$L(AR) D ERR($P($T(@("T1"_QT)),U,2)_LIJN_$$REPL^cAFA10($P($T(@("T3"_QT)),U,2),"XXX",$P(AR," "))) S SWERR=1 G SD31 S ERR=0 I '$D(@("^"_Q_"AR(AR)")) D ERR($P($T(@("T1"_QT)),U,2)_LIJN_$$REPL^cAFA10($P($T(@("T3"_QT)),U,2),"XXX",$P(AR," ")),1) S ERR=1 G SD341 I $P(@("^"_Q_"AR(AR,0)"),D,30) D ERR($P($T(@("T1"_QT)),U,2)_LIJN_$$REPL^cAFA10($P($T(@("T3"_QT)),U,3),"XXX",$P(AR," ")),1) S ERR=1 SD341 I ERR=1 S SWERR=1 G SD31 ; ; Controle Analytische rekening SD35 I '$L(ARA) G SD351 ; analytische rekening niet noodzakelijk ingevuld - FB/GM - 10.02.11 ; D ERR($P($T(@("T1"_QT)),U,2)_LIJN_$$REPL^cAFA10($P($T(@("T5"_QT)),U,2),"XXX",ARA),1) S SWERR=1 G SD31 S ERR=0 I '$D(@("^"_Q_"ARA(ARA)")) D ERR($P($T(@("T1"_QT)),U,2)_LIJN_$$REPL^cAFA10($P($T(@("T5"_QT)),U,2),"XXX",$P(ARA," ")),1) S ERR=1 G SD351 I $P(@("^"_Q_"ARA(ARA,0)"),D,30) D ERR($P($T(@("T1"_QT)),U,2)_LIJN_$$REPL^cAFA10($P($T(@("T5"_QT)),U,3),"XXX",$P(ARA," ")),1) S ERR=1 SD351 I ERR=1 S SWERR=1 G SD31 ; SD355 S ^HULP(boot,$J,TABSD(SD),BP,LIJN)=AR_D_BE_D_D_ARA_D ; SD359 G SD31 ; ; controle op totaalbedrag na inlezen SD4 S BP="" F S BP=$O(TOT(BP)) Q:BP="" I TOT(BP)'=0 D ERR($P($T(@("T11"_QT)),U,2),1) S SWERR=1 G SDX ; totaal verschillend van 0 ; ; Boekingsreeksen opzetten I SWERR G SDX SD41 S BP="" SD42 S BP=$O(^HULP(boot,$J,Q,BP)) I '$L(BP) G SD5 ; ; Hoofding S DATUIT="" S DATUIT=$$LDM^cAFD1($P(BP,"."),$P(BP,".",2))_"."_$P(BP,".",2)_"."_$E(BP,3,4) K TAB S TAB(1)="" S $P(TAB(1),D,2)=$P($T(@("T9"_QT)),U,2)_BP ; Omschrijving S $P(TAB(1),D,3)="" ; journaal (= zonder) S $P(TAB(1),D,4)=BP ; Boekingsmaand S $P(TAB(1),D,5)=BP ; Periode S REF=$P($T(@("T10"_QT)),U,2) S REF=REF_$P(BP,".",2)_"."_$E(BP,3,4) ; referte S $P(TAB(1),D,6)=REF S $P(TAB(1),D,7)=$P($T(@("T12"_QT)),U,2)_BP ; lange omschrijving S $P(TAB(1),D,8)=QU ; initialen S $P(TAB(1),D,9)=DT ; datum creatie S $P(TAB(1),D,11)=DATUIT ; datum uittreksel D P^cAN220("FID.J",0,"","TAB","") I $L(K) X "STOP" S UI1FID=NUI1,LIJN="",LYN=999 ; ; Detaillijnen SD43 S LIJN=$O(^HULP(boot,$J,Q,BP,LIJN)) I '$L(LIJN) G SD42 S DET=^(LIJN),LYN=LYN+1 K TAB S TAB(1)=$P(DET,D) ; grootboekrekening S BEDRAG=$P(DET,D,2) I BEDRAG<0 S BEDRAG=-BEDRAG_"-" S $P(TAB(1),D,2)=BEDRAG ; bedrag S $P(TAB(1),D,4)=$P(DET,D,4) ; analytische rekening S $P(TAB(1),D,11)=UI1FID D P^cAN220("FID.J.DET",0,UI1FID_" "_LYN,"TAB","") I $L(K) X "STOP" SD49 G SD43 ; ; Output SD5 S R=1_D_$P($T(@("T6"_QT)),U,2) ; ; Indien er fouten zijn, foutboodschap opzetten SDX I SWERR D . S R=0_D_$P($T(@("T7"_QT)),U,2) . S R=$$OUTER(R,UI1,$G(IMPDMS),$G(IMPTYPE)) ; ; Opkuis SDY D KHULP ; SDZ Q R ; ; ; -------------------------------------------------------------------- ; H U L P - F U N C T I E S ; -------------------------------------------------------------------- ; ERR(ERROMS,ERRTYPE) ; Eén fout loggen S OK=$$ERR^cANIMP02(Q,QU,$G(IMPDMS),IMPTYPE,UI1,LN,ERROMS,ERRTYPE,$G(BG)) S SWERR=1 ; Variabele bijhouden dat er fouten zijn ERRZ Q ; OUTER(OUT,IMPUI1,IMPDMS,IMPTYPE) ; Lijst met fouten N UREF,UI1,i,R S $ZT="TRAP^cAN000" I '$L($G(IMPDMS)) S IMPDMS="IMPORT" I '$L($G(IMPTYPE)) S IMPTYPE="IMPORT" S IMPEDMS=IMPDMS_".ERR" S UREF=$P($$REF^cANIMP02(Q,IMPEDMS,1),D) I '$L(UREF) Q S UI1=IMPUI1_" " F i=1:1:5 D Q:$P(UI1," ")'=IMPUI1 . S UI1=$O(@UREF) Q:$P(UI1," ")'=IMPUI1 . S R=$P($G(^(UI1,1)),D) I $L(R) S:i=1 OUT=OUT_$C(13,10) S OUT=OUT_$C(13,10)_R I $P(UI1," ")=IMPUI1,$P($O(@UREF)," ")=IMPUI1 S OUT=OUT_$C(13,10)_"..." OUTERZ Q OUT ; KHULP ; verwijderen hulpbestand(en) N I S I=$J K ^HULP(boot,I) KHULPA S I=$O(^(I)) I I\1=$J K ^(I) G KHULPA KHULPZ Q ; ZZ ; 10.02.11 - FB/GM