KLACHTL ; Klachtenbehandeling (lijsten) [ 03/25/2003 9:50 AM ] ; ; Overzicht terugnames en proforma's zonder klacht TNPROF(KLNr,FromDate,ToDate) New %SC,%TC,%J,Sort,LD,FromCust,ToCust Set KLNr=$G(KLNr),FromDate=$G(FromDate),ToDate=$G(ToDate),Sort="K" Set:FromDate="" FromDate=$$CALCDATE^vhLib.DataTypes(,"M",-1,"FD") Set:ToDate="" ToDate=$$CALCDATE^vhLib.DataTypes(,"M",-1,"LD") Set %J=$$%J^vhRtn1() Kill ^HULP(%J) If KLNr Do .Kill ^HULP(%J) .Set %SC=1,(FromCust,ToCust)=^KK1(KLNr),FromCust=$O(^KKL(FromCust),-1) .Do INIT^vhLIST("KLACHTL","TNPROF",.LD) .Do DISPLAY^vhScherm("KLACHTL") .Do FETCH,WRITE^vhLIST(.LD) Else Do KRITERIA Do:%SC .For Set Input=$$SCROLL^vhLIST(.LD) Do Quit:"\-\CANC\"[(D_Input_D) ..If Input="COM" Set Input="" Do CALL^vhMenu("KLACHTLTP") ..Do EXEC^vhMenu("KLACHTLTP",.Input) .Kill ^HULP(%J) Quit ; KRITERIA New TempFrom,TempTo,TempSort Set TempDate=$G(FromDate),TempTo=$G(ToDate),TempSort=$G(Sort) Do EDIT^vhScherm("KLACHTL") If %SC Do .Kill ^HULP(%J) .If KLNr Set (FromCust,ToCust)=^KK1(KLNr) .Else Set FromCust=$O(^KKL(0)),ToCust=$O(^KKL(""),-1) .Set FromCust=$O(^KKL(FromCust),-1) .Do INIT^vhLIST("KLACHTL","TNPROF",.LD) .Do DISPLAY^vhScherm("KLACHTL") .Do STORE^vhTERMINA() .Set FP=160 W @F,@FMTK,"*** I'm thinking ***",@FMTk .Do FETCH .Do REFRESH^vhTERMINA() Else Set FromDate=TempDate,ToDate=TempTo,Sort=TempSort If $D(LD) Do DISPLAY^vhScherm("KLACHTL"),WRITE^vhLIST(.LD) Quit ; FETCH New R,Date,KLNr,KLNaam,Global,FANr,FaktDate,Bedrag,Munt,SortKey,Count,FaktKode,IsProf Kill ^HULP(%J,0,"S") Set Count=0 For Set FromCust=$O(^KKL(FromCust)) Quit:FromCust="" Quit:FromCust]ToCust Do .Set R=^KKL(FromCust,0),KLNr=$P(R,D),KLNaam=$P(R,D,2) .For Global="KFA","KFAP" Do ..Set Date=-FromDate-1,IsProf=Global["P" ..For Set Date=$O(@("^"_Global_"1(""F"",KLNr,Date)"),-1) Quit:Date="" Quit:-Date>ToDate Do ...Set FANr="" ...For Set FANr=$O(@("^"_Global_"1(""F"",KLNr,Date,FANr)")) Quit:FANr="" Do ....If IsProf Quit:$D(^KlachtI("V",FANr)) ....Else Quit:$D(^KlachtI("F",FANr)) Quit:'$$ISTERUGN(FANr) ....Set R=@("^"_Global_"(""F"",FANr,0,0)"),FaktDate=$P(R,D,6),Bedrag=$P(R,D,7),Munt=$P(R,D,5) ....Set FaktKode=$P(R,D,2) Set:FaktKode="C" Bedrag=-Bedrag ....Set R=KLNr_D_KLNr_D_KLNaam_D_FANr_D_IsProf ....Set R=R_D_$S(IsProf:$$ISMONST(FANr),1:"") ....Set R=R_D_FaktDate_D_Bedrag_D_Munt ....If Sort="F" Set SortKey='IsProf_FANr ....Else If Sort="P" Set SortKey=''IsProf_FANr ....Else Do .....Set:Sort="K" SortKey=FromCust_$$INTDATE^vhLib.DataTypes(FaktDate) .....Set:Sort="D" SortKey=$$INTDATE^vhLib.DataTypes(FaktDate)_FromCust .....Set SortKey=SortKey_IsProf_FANr ....Set ^HULP(%J,0,"S",SortKey)=R Set (SortKey,KLNaam)="" For Set SortKey=$O(^HULP(%J,0,"S",SortKey)) Quit:SortKey="" Do .Set R=^HULP(%J,0,"S",SortKey) .If $P(R,D,3)=KLNaam Set $P(R,D,2,3)=D .Else Set KLNaam=$P(R,D,3) .Set Count=Count+1,^HULP(%J,Count)=R Kill ^HULP(%J,0,"S") Quit ; ISTERUGN(FANr) New R,IsTerugN,BONNr,BLNr,Aantal Set IsTerugN=0,BONNr="U" For Set BONNr=$O(^KFA("F",FANr,BONNr)) Quit:$E(BONNr)'="U" Do Quit:IsTerugN .Set BLNr=100 .For Set BLNr=$O(^KFA("F",FANr,BONNr,BLNr)) Quit:'BLNr Do Quit:IsTerugN ..Set R=^KFA("F",FANr,BONNr,BLNr),Aantal=$P(R,D,3),IsTerugN=Aantal<0 Quit IsTerugN ; ISMONST(FANr) New R,IsMonst Set IsMonst=0,BONNr="U" For Set BONNr=$O(^KFAP("F",FANr,BONNr)) Quit:$E(BONNr)'="U" Do Quit:IsMonst .Set R=^KFAP("F",FANr,BONNr,1),IsMonst=$P(R,D,25)["M" Quit IsMonst ; PRINT New TnProf Do INIT^vhLISTO("KLACHTL","TNPROF",.TnProf) Set TnProf(8)=$$TITEL_" ",TnProf(10)="",TnProf(11)="Terugnames, proforma's\zonder klacht" Do PRINT^OUTPUT(.TnProf,"P") Quit ; TRANSF New TnProf Do INIT^vhLISTO("KLACHTL","TNPROF",.TnProf) Set TnProf(8)=$$TITEL_" ",TnProf(10)="",TnProf(11)="Terugnames, proforma's\zonder klacht" Do STORE^vhTERMINA(),PRINT^OUTPUT(.TnProf,"T"),REFRESH^vhTERMINA() Quit ; TITEL() Quit " Klant | Factuur | Datum | Bedrag" ;