cTN804 ;IC-kwartaalopgave dotNet; cTN804; [ 24/11/09 09:36:45 ] ; T1 ;IC-opgave; T2 ;De huidige detaillijnen worden verwijderd.; T3 ;De berekening kan enkel gebeuren indien de status van de IC-opgave 'voorlopig' is.; T4 ;Programma voor berekening niet gevonden.; T5 ;Parameters boekhouding in gebruik.; T6 ;Exporteren niet mogelijk voor voorlopige IC-opgave.; T7 ;Deze IC-opgave werd reeds geëxporteerd.; T8 ;Map of bestandsnaam voor de elektronische aangifte is niet ingevuld.; T9 ;Map voor de elektronische aangifte is niet correct ingevuld.; T10 ;Programma voor export niet gevonden.; T11 ;De IC-opgave werd geëxporteerd naar ;.; T12 ;Berekening niet mogelijk, BTW-nr is niet ingevuld.; ; T1F ;Relevé IC; T2F ;Les détails actuelles seront radiés.; T3F ;Le calcul ne peut se faire si le statut du relevé IC est 'provisoir'.; T4F ;Le programme de calcul n'est pas disponible.; T5F ;Paramètres comptables en usage.; T6F ;L'exportation est impossible pour le relevé IC provisoire.; T7F ;Cette déclaration est déjà exportée.; T8F ;Dossier ou nom de fichier pour la déclaration électronique n'est pas rempli.; T9F ;Dossier pour la déclaration électronique n'est pas rempli correctement.; T10F ;Programme d'exportation non disponible.; T11F ;Le relevé IC fut exportée vers ;.; T12F ;Calcul impossible, le n° de TVA n'est pas rempli.; ; T1E ;IC Statement; T2E ;The actual detail will be lost.; T3E ;Calculation can only be made if the declaration's status is 'temporary'.; T4E ;Calculation program not found.; T5E ;Settings accounting in use.; T6E ;Export not possible in case of temporary IC Statement.; T7E ;This IC Statement was already exported.; T8E ;The path or filename for the electronic IC Statement is empty.; T9E ;The path for the electronic IC Statement is not correct.; T10E ;Export program not found.; T11E ;The IC Statement is exported to ;.; T12E ;Calculation cannot be made, VAT number is missing.; ; YZ Q ; EXP(UI1KW,SW) ; Exporteren IC-kwartaalopgave ; Input : UI1KW = UI1 IC-kwartaalopgave ; SW = 0 : check geëxporteerd ; 1 : geëxporteerd reeds gecontroleerd ; ; Output: 1 : alles OK ; 0\foutboodschap ; -1\waarschuwing ; S $ZT="^dmERROR" N @$$INITVAR^cAFVBA01("UI1KW,SW") S OK=1 ; F i="UI1KW","SW" S @i=$G(@i) ; Locken van de IC-kwartaalopgave S UREF=$P($$REF^cAFA10(.Q,"ICKW"),D) S UREF=$$REPL^cAFA10(UREF,"UI1","UI1KW") S OK=$$PLUS^cANLOCK($na(@UREF),,$P($T(@("T1"_QT)),U,2),0,2) I 'OK G EXPZ ; Locken van Parameters boekhouding I '$$LOCK^cANLOCK("^"_Q_"BA(""%T"",13,""K"")","",0,0) S OK="0\"_$P($T(@("T5"_QT)),U,2) G EXPY ; Testen status S STAT=$$SIG^cAFA1("ICKW",UI1KW,103) I STAT=0 S OK="0\"_$P($T(@("T6"_QT)),U,2) G EXPY ; Controleren of reeds geexporteerd I $G(SW) G EXPA I STAT=2 S OK="-1\"_$P($T(@("T7"_QT)),U,2) G EXPY EXPA ; Ophalen pad + filenaam voor export S I=$$SIG^cAFA1("Q",Q,257)_D_$P(^(1),D,58) ; Testen of pad en filenaam zijn ingevuld I $P(^(1),D,57)=""!($P(^(1),D,58)="") S OK="0\"_$P($T(@("T8"_QT)),U,2) G EXPY ; Testen of pad werd gevonden I $$TST^cA710($P(^(1),D,57)) S OK="0\"_$P($T(@("T9"_QT)),U,2) G EXPY S FILE=$$BEST^cA710(I) ; Ophalen programma's voor uitvoeren export S LAND=$$SIG^cAFA1("Q",Q,222) S KW=$$SIG^cAFA1("ICKW",UI1KW,102),BP1=$P(^(0),D) S BP1=$$BM^cTN801(BP1,KW) S PROG=$$PROG(LAND,BP1,2) I PROG="" S OK="0\"_$P($T(@("T10"_QT)),U,2) G EXPY ; Uitvoeren programma voor export X PROG ; Verzetten satus naar 'geexporteerd' I OK D W^cAN220("ICKW","",UI1KW,103,2) I K="-" X "STOP" ; Tonen boodschap 'Export goed verlopen' I OK S OK="1\"_$P($T(@("T11"_QT)),U,2)_$TR(FILE,D,"/")_$P($T(@("T11"_QT)),U,3) EXPY L -@UREF L -@("^"_Q_"BA(""%T"",13,""K"")") EXPZ Q OK ; ICKW(GRIDID,UI1KW,SW,CNTR) ; Berekenen van een IC-kwartaalopgave ; Input : GRIDID = volgnr van de grid : indien '' : volgnummer ophalen ; UI1BAKW = UI1 van de IC-kwataalopgave ; SW = 0 : detail nog niet gecontroleerd ; 1 : detail reeds gecontroleerd ; CNTR = 0 : IC-kwartaalopgave berekenen ; 1 : controle ; ; Output: 1 : alles OK ; 0\foutboodschap ; -1\waarschuwing ; S $ZT="^dmERROR" N @$$INITVAR^cAFVBA01("GRIDID,UI1KW,SW,CNTR") ; D QT^cAFVBO01 F i="GRIDID","UI1KW","SW","CNTR" S @i=$G(@i) ; Ophalen GRIDID I '$L(GRIDID) S GRIDID=$$GRIDID^cAFVBF01() S OK=GRIDID ; ; Indien berekenen IC-kwartaalopgave en dus geen controle I $G(CNTR) G ICKWC ; Locken van de IC-kwartaalopgave S UREF=$P($$REF^cAFA10(.Q,"ICKW"),D) S UREF=$$REPL^cAFA10(UREF,"UI1","UI1KW") S UREFDET=$$REF^cAFA10(.Q,"ICKW.DET") S IREFDET=$P(UREFDET,D,3) S UREFDET=$P(UREFDET,D) I SW G ICKWA ; Controleren of er reeds detaillijnen bestaan S UI1=UI1KW_" " I $P($O(@UREFDET)," ")=UI1KW S OK="-1\"_$P($T(@("T2"_QT)),U,2) G ICKWZ ICKWA S OK=$$PLUS^cANLOCK($na(@UREF),,$P($T(@("T1"_QT)),U,2),0,2) I 'OK G ICKWZ ; Testen status I $$SIG^cAFA1("ICKW",UI1KW,103) S OK="0\"_$P($T(@("T3"_QT)),U,2) G ICKWY ; Testen of BTW-nr is ingevuld I '$L($$SIG^cAFA1("ICKW",UI1KW,105)) S OK="0\"_$P($T(@("T12"_QT)),U,2) G ICKWY ; Ophalen programma's voor uitvoeren berekening ICKWC S LAND=$$SIG^cAFA1("Q",Q,222) S KW=$$SIG^cAFA1("ICKW",UI1KW,102),BP1=$P(^(0),D) S BP1=$$BM^cTN801(BP1,KW) S PROG=$$PROG(LAND,BP1,$S($G(CNTR):1,1:"")) I PROG="" S OK="0\"_$P($T(@("T4"_QT)),U,2) G ICKWY ; Uitvoeren programma voor berekenen ic-opgave D @PROG I $G(CNTR) G ICKWF ; Verwijderen bestaande detaillijnen S UI1=UI1KW_" " F S UI1=$O(@UREFDET) Q:$P(UI1," ")'=UI1KW D X^cAN220("ICKW.DET","",UI1) I K="-" X "STOP" ; Wegschrijven detaillijnen ICKWD S I1="" ICKWDA S I1=$O(^mtemp99(GRIDID,"ICKW",I1)) I I1="" G ICKWE S B=^(I1) S BEDR=$P(B,D,3) ; bedrag K TAB S TAB(1)=UI1KW S $P(TAB(1),D,2)=$P(B,D) ; BTW-nr S VNR=$O(@IREFDET@("M2",Q,UI1KW,""),-1) S VNR=VNR+1 S $P(TAB(1),D,4)=VNR S $P(TAB(1),D,5)=BEDR S $P(TAB(1),D,6)=BEDR S $P(TAB(1),D,8)=$P(B,D,2) ; Code S UI1DET=UI1KW_" "_$P(TAB(1),D,4) D P^cAN220("ICKW.DET","",UI1DET,"TAB","") I K="-" X "STOP" G ICKWDA ; Wegschrijven gegevens laatste berekening ICKWE D ^cA105,^cA106 K TAB S TAB(118)=$H S TAB(119)=QU S TAB(122)=$$HD^cAFD1($H) S TAB(123)=$$HT^cAFD1($H) D B^cAN220("ICKW","",UI1KW,"TAB") I K="-" X "STOP" G ICKWY ; Bij Controle: detaillijnen weggschrijven in ^mtemp99 ICKWF S I1="" ICKWFA S I1=$O(^mtemp99(GRIDID,"ICKW",I1)) I I1="" G ICKWY S I2="" ICKWFB S I2=$O(^mtemp99(GRIDID,"ICKW",I1,I2)) I I2="" G ICKWFA S B=^(I2) S BEDR=$P(B,D,3) S VNR=$$LNR^cTN803(GRIDID) S UI1=UI1KW_" "_VNR S ^mtemp99(GRIDID,"COMMON",UI1,0)=UI1KW_D_$P(B,D)_D_I2_D_$P(UI1," ",2)_D_BEDR_D_BEDR_D_D_$P(B,D,2) G ICKWFB ; Unlocken van de IC-kwartaalopgave ICKWY I '$G(CNTR) L -@UREF K ^mtemp99(GRIDID,"ICKW") S OK=GRIDID ICKWZ Q OK ; CHKKOL(UI1KW,SW,PAR) ; Controleren of kolom zichtbaar of niet zichtbaar moet zijn ; Input: UI1KW: UI1 IC-opgave ; SW : 1 = Check voor code ; PAR : 1. Maand ; 2. Kwartaal ; ; Output: 0 = disablen ; 1 = enablen ; N OK,LAND,KW,BP1,PROG S $ZT="TRAP^cAN000" ; Ophalen programma's voor disablen/enablen kolommen S LAND=$$SIG^cAFA1("Q",Q,222) I $L($G(UI1KW)) S KW=$$SIG^cAFA1("ICKW",UI1KW,102),BP1=$P(^(0),D) I $L($G(PAR)) S BP1=$P(PAR,D),KW=$P(PAR,D,2) I '$L($G(BP1)),'$L($G(KW)) S OK=0 G CHKKOLZ ; Enkel in theorie mogelijk S BP1=$$BM^cTN801(BP1,KW) S PROG=$$PROG(LAND,BP1,3) I PROG="" S OK=1 G CHKKOLZ ; Uitvoeren programma voor check van de code X PROG CHKKOLZ Q OK ; PROG(LAND,BP1,SWSOORT) ; Ophalen programma voor berekenen IC-kwartaalopgave ; Input: LAND: UI1 uit ISO.LAND ; BP1 : vanaf maand ; SWSOORT: "" = programma berekenen IC-kwartaalopgave ; 1 = programma controle van de IC-kwartaalopgave ; 2 = programma exporteren IC-kwartaalopgave ; 3 = programma disablen/enablen kolommen voor IC-opgave ; Output: naam programma berekenen IC-kwartaalopgave ; N PROG,UREF,UI1,UI1PROG S $ZT="TRAP^cAN000" S PROG="" S UREF=$P($$REF^cAFA10(.Q,"ICKW.LAND"),D) S UI1=LAND_" "_($TR(BP1,".","")+1) S UI1=$O(@UREF,-1) I $P(UI1," ")'=LAND G PROGZ I $G(SWSOORT)=1 S PROG=$$SIG^cAFA1("ICKW.LAND",UI1,104) S:(PROG="") PROG=$$SIG^cAFA1("ICKW.LAND",UI1,103) G PROGZ I $G(SWSOORT)=2 S PROG=$$SIG^cAFA1("ICKW.LAND",UI1,106) G PROGZ I $G(SWSOORT)=3 S PROG=$$SIG^cAFA1("ICKW.LAND",UI1,107) G PROGZ S PROG=$$SIG^cAFA1("ICKW.LAND",UI1,103) PROGZ Q PROG ; ZZ ; 16.10.08 - 14 u 11 * V9.04