Helo Experts!! How can we customize Item Groupwise Bills receivable outstanding Report monthly? can anybody provide me TDL codes or give me some guidance to customize this report, it will be a great help for me. Thanks & Regards Sundar
you need to start first .. if you face any issues our members will help you. In this forum.. all are busy with their daily work and they are pulling their time to share their knowledge. Kindly understand this. I have checked all your queries. so, first start doing some thing from your end.so we will help you if you face any issues
Dear Admin Thank you very much for your kind advice. I have tried to achieve this requirement by modifying one of our member's code in our forum. I have attached the TDL code which I have tried. The problem is, if I have chosen a particular Item group it gives all outstanding reports, i have some problem in filtering the Inventoryentries and Ledgerentries for the selected Item group. Kindly go through the TDL and do the need full. I thank you once again for your timely help. With Regards Sundar Code: [#Menu: Gateway of Tally] Add : Key Item : Before: @@locQuit : ItemGroup Outstanding : D : Display Collection : CSCCNI GrpList [Collection: CSCCNI GrpList] Title : "List of Group" Type : Stock Group; Group Belongs To : Yes Variable : Stock Group Name;GroupName Report : EgREPORT Trigger : CSCCNI Grp Trigger Rep Align : Centre ;Filter : IsDebtor [System : Formula] IsDebtor : $$IsBelongsTo:$$GroupSundryDebtors SCVSalVch : $$IsSales:$VoucherTypeName ;;Trigger Report [Report : CSCCNI Grp Trigger Rep] Use : Collection Variable Local : Line : Collection Variable : Add : Field : CSCCNIGrpListFld Local : Field: MV Title : Info : "Name of Group" [Field: CSCCNIGrpListFld] Use : Name Field Variable : Stock Group Name; GroupName Modifies : Stock Group Name;GroupName Table : CSCCNI GrpList Show Table : Always /* [Report : CSCCNI Sales Register] Title : "Group Wise Sales Register" Use : Dsp Template Set : GroupName : ##GroupName Variable : IsMultiPage, InNewPages Set : IsMultiPage : yes Set : InNewPages : yes */ [Report :EgREPORT] Form :EGREPORT use :DspTemplate Title :"Sales Report" Variable :Stock Group Name;Groupname [Form :EGREPORT] use :DspTemplate Part :AddressPart,Discriptionpart Height :100% Page Background:White FullWidth :Yes [Part :AddressPart] Line :CmpNamLin,FrmDateedLin,ToDatedLin [Line :CmpNamLin] Field :CmpNamFld [Field :CmpNamFld] setas :@@CmpMailName FullWidth :Yes style :AirwebStyle Align :center [Style :AirwebStyle] Height :10 Font :Verdana Bold :Yes /* [Line :CmpAddrLin] Field :CmpAddrfld [Field :CmpAddrFld] setas :$Address FullWidth :Yes Style :AirwebStyle Align :Center */ [Line :FrmDateedLin] Field:Group Anme,Group Anmeans Right Field :FrmdateFld,FrmdateAns Space Bottom :2 mms [Field:Group Anme] Use:Name Field SetAs:"Group Name:" Width:25 mms Style:Tiny [Field:Group Anmeans] Use:Name Field SetAs:##StockGroupName ;GroupName Width:40 mms Style:Tiny [Field :FrmdateFld] Use:Medium prompt Setas :"From Date:" Width :20 mms Style :Tiny [Field :FrmdateAns] Use :UniDateField Setas :@@DspFromDate Width :50 mms Align :Left Style :Tiny [Line :ToDatedLin] Right Field :ToDatedFld,ToDatedAns Space Bottom :2 mms [Field :ToDatedFld] Use:Medium prompt Setas :"To Date:" Width :20 mms style :Tiny [Field :ToDatedAns] Use :UniDateField Setas :@@DspToDate Width :50 mms Style :Tiny Align :Left [Part :Discriptionpart] Line :DiscriptnLin,DiscripAnsa BOttom Line:TotalsLIne Repeat :DiscripAnsa:MyLedCollectiona Common border :Yes Vertical:Yes Scroll:both Total :InvoiceAmtAnsa,ReceiptValueansa,DebittFldua,ReceiptValueansa,BcUSDansa [Line :DiscriptnLin] Field :DateeFld,ParticlFld,VchTypFld,DebittFld,Dateofinvoice,InvoiceAmountLabel ,InvoiceAmountType,ReceiptValuelabel,BcUSDLAbel,overDuedays Border :thin Top Bottom [Field : DateeFld] Setas :"S.NO" Width :8 mms Style :Tiny Border :thin right Align :Center [Field :ParticlFld] Use:Name Field Setas :"Company Name" Width :80 mms Style :Tiny Border :thin Right Align :Center [Field :VchTypFld] Setas :If $$Line=1 then "Invoice No." else "" Width :30 mms Style :Tiny Border :Thin Right Align :Center [Field :DebittFld] Setas :If $$Line=1 Then "Ref.PO" Else "" Width :30 mms Style :Tiny Border :thin right Align :Center [Field:Dateofinvoice] Setas :"Date of Invoice" Width :40 mms Style :Tiny Border :thin right Align :Center [Field :InvoiceAmountLabel] Setas :"Invoice Value" Width :40 mms style :Tiny Border :thin Right Align :Center [Field:InvoiceAmountType] Setas :"Type Dr / Cr" Width :30 mms style :Tiny Border :thin Right Align :Center [Field :ReceiptValuelabel] Setas :"Receipts Value" Width :20 mms Style :Tiny Border :thin Right [Field :BcUSDLAbel] Setas :"Balance (USD)" Width :20 mms Style :Tiny Border :thin Right [Field :overDuedays] Setas :"Over Due Days" Width :20 mms Border :Thin right Style :Tiny [Line :DiscripAnsa] Field : DateeFldua, ParticlFldua, ParticlFlduGrpa, VchTypFldua, DebittFldua ,DebittFldua,Bank datansa,InvoiceAmtAnsa,ReceiptValueansa,BcUSDansa,overDuedayansa Border :Thin Top Explode:MybillPart Explode:MybillParta Removeif :$Closingbalance=0 [Field : DateeFldua] Use :Name Field Setas :If $$isempty:##StockGroupName then "" Else $$Line;"" $Name ;;GroupName Width :8 mms Style :Tiny Border :Thin Right [Field :ParticlFldua] Use :NameField Setas :##StockGroupName ;GroupName ;$Name Width :80 mms Border :thin Right Unique:YES [Field :ParticlFlduGrpa] Use :NameField Setas :"asdfasdfadsfasdf";$Parent:Ledger:$LedgerName Width :40 mms Style :Tiny Border :thin Right ; Invisible :yes ; Isindirect :yes [Field :VchTypFldua] Use:Amount Field Setas :$Openingbalance Width :30 mms Style :Tiny Border :Thin Right [#Object:Ledger] [Field :DebittFldua] Use :AmountField Setas :"" ;;$BSDebits Width :30 mms Style :Tiny Border :thin right [Field :CredittFldua] USe :Uni Date Field Setas :"" Width :40 mms style :Tiny Border:Thin Right [Field :Bank datansa] Use :Name Field Setas :"Total" Width :30 mms Style :Tiny Border :Thin Right Align :Centre Invisible:yes [Field :InvoiceAmtAnsa];;KSD Use :Amount Field Setas :"" Width :30 mms Border :thin Right [System:Formula] asc:$ClosingBalance:Ledger:#ParticlFldua asd:$CashInFlow:Ledger:#ParticlFldua sssss:@@asc+@@asd [Field :ReceiptValueansa] Use :Amount Field Setas :$BSCredits Width :20 mms Border :Thin Right [Field :BcUSDansa] Use :Amount Field Setas :$BSClosing Width :20 mms Style :Tiny Border :Thin Right [Field :overDuedayansa] Use : Short Name Field Set as :"" Style : Tiny Width : 20 mms Align : right Set as : @DaysByDueDate DaysByBillDate : $$String:@BillDays DaysByDueDate : if @@DSPToDate >= @@CreditPeriod then $$String:@OverDueDays else "" OverDueDays : @@DSPToDate - @@CreditPeriod BillDays : @@DSPToDate - $BillDated border :Thin right ;;******************************** Part ******************************************* [Part:MybillPart] Line :DiscripAns Repeat :DiscripAns:MyLedCollection Scroll :Vertical Vertical:yes bottom Line:InvoiceTotalLine Total:ReceiptValueans,InvoiceTotalAns Total:InvoiceAmtAnsa,InvoiceAmtAnsa,InvoiceAmtAns ;;______________________________________________________ Stock Group Included [#Line: BILL InvDetails] ;Remove if :#BILLINVItemGrp != ##GroupName ; Empty if : #BILLINVItemGrp != ##GroupName Add: Field :After: BILLINV Item: BILLINVItemGrp ; Remove if :#BILLINVItemGrp != ##GroupName [Field : BILLINVItemGrp] Use :Name Field Setas : $ItmGroupName ;$ItmGroupName ;$Parent:StockItem:$StockItemName Width :15 mms Style :Tiny Align:Left ;Border :Thin Right ;;______________________________________________________ Party Ledger Included [#Line: BILL Vouchers] ;Remove if :$Parent:StockItem:$StockItemName != ##GroupName ;Empty : #BILLINVItemGrp != ##GroupName ;Local:Collection: Ledger Entries: Filter:ItemGrpFilter Add: Field :After: BILLVCH Type: BILLINVPrtyName [Field : BILLINVPrtyName] Use :Name Field Setas : $PartyLedgerName Width :20 mms Style :Tiny Align:Left ;Border :Thin Right ;;________________________________________________________ [#Part: BILL Vouchers] ;; Billing Voucher Details ; Local:Collection: Ledger Entries:add: Child Of:#CSCCNIGrpListFld;Filter:ItemGrpFilter [#Part: BILL InvDetails] ;; Billing Inventory Details ; Local:Collection: Inventory Entries: Add:Child Of:#CSCCNIGrpListFld;By : ItmGroupName : $Parent:StockItem:$StockItemName Local:Collection: Inventory Entries: Add: Fetch: ItmGroupName ;delete:Repeat : BILL InvDetails : Inventory Entries ; Add:Repeat : BILL InvDetails :newInventoryentries ; Local:collection : Inventoryentries: add : Filter : ItemGrpFilter ; Local:Collection: Inventoryentries: Walk : Inventory Entries ;Local:Collection: Inventoryentries: By : Name : $Parent:StockItem:$StockItemName [collection : newInventoryentries] Use:Inventory Entries By : ItmGroupName : $Parent:StockItem:$StockItemName Filter : ItemGrpFilter ; Repeat : BILL InvDetails : NWInventory Entries ; Add: Local:Collection:NWInventory Entries ; Local: Collection:Ledger Entries :Child Of:#CSCCNIGrpListFld [System:formula] ItemGrpFilter : ##StockGroupName = $ItmGroupName;#BILLINVItemGrp ; = ##GroupName ; ItmGroupName : $Parent:StockItem:$StockItemName /* [#Part: BILL Vouchers] Line : BILL Vouchers Repeat : BILL Vouchers : Ledger Bills Delete:Local: Collection:Ledger Entries Add: Local:Collection:Ledger Bills Local: Collection:Ledger Entries :Child Of:#CSCCNIGrpListFld */ ;;++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [#Object: Inventory Entry] ItmGroupName : $Parent:StockItem:$StockItemName ;;++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [Line :DiscripAns] Field : InvoiceTotalAns,DateeFldu,ParticlFldu,ParticlFlduGrp,VchTypFldu,DebittFldu, DebittFldu,Bank datans,InvoiceAmtAns ,InvoiceAmtType,ReceiptValueans,BcUSDans,overDuedayans Border :Thin Top Explode:BillVouchers:yes; ##ExplodeFlag Or $$KeyExplode ;Empty : #BILLINVItemGrp != ##GroupName Local :Field : InvoiceTotalAns :Invisible : YES Remove if :#Bankdatans<##SvFromDate [Field : DateeFldu] Use :Name Field Setas :"" Width :8 mms Style :Tiny Border :Thin Right [Field :ParticlFldu] Use :NameField Setas :"" Width :80 mms Style :Tiny Border :thin Right Unique:YES [Field :ParticlFlduGrp] Use :NameField Setas : $Parent:StockItem:$StockItemName ;$Parent:Ledger:$LedgerName Width :40 mms Style :Tiny Border :thin Right Invisible :yes Isindirect :yes [Field :VchTypFldu] Use:Name Field Setas :$name Width :30 mms Style :Tiny Border :Thin Right [Field :DebittFldu] Use :Name Field Setas :$Ledgerentries[1,$$IsSales:$Vouchertypename].REFERENCE Width :30 mms Style :Tiny Border :thin right [Field :CredittFldu] USe :Uni Date Field Setas :$Date Width :40 mms style :Tiny Border:Thin Right [Field :Bank datans] Use :Uni DateField Setas :$billDate Width :30 mms Style :Tiny Border :Thin Right [Field :InvoiceAmtAns] Use :Amount Field Setas :$openingbalance ;;sat Width :30 mms Style :Tiny Border :thin Right ;;Format:"DRCR" [Field:InvoiceAmtType] Use :Amount DrCr Field Setas :$Openingbalance Width :30 mms Style :Tiny Border :thin Right [Field :ReceiptValueans] Use :Amount Field Setas :if Not $$IsDr:$Openingbalance then $Openingbalance Else @Asdf ;; Asdf :$$AsAmount:$openingbalance-$$AsAmount:$Closingbalance Width :20 mms Style :Tiny Border :Thin Right ;;Format :"DRCR" [Field :BcUSDans] Use :Amount Field Setas :$Closingbalance Width :20 mms Style :Tiny Border :Thin Right ;;Format :"DRCR" [Field :overDuedayans] Use : Short Name Field Set as :$BillDate + @@DspToDAte Style : Tiny Width : 20 mms Align : right Set as : @DaysByDueDate DaysByBillDate : $$String:@BillDays DaysByDueDate : if @@DSPToDate >= @@CreditPeriod then $$String:@OverDueDays else "" OverDueDays : @@DSPToDate - @@CreditPeriod BillDays : @@DSPToDate - $BillDated border :Thin right ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;Second Explode Part************************ [Part:MybillParta] Line :DiscripAns Repeat :DiscripAns:MyLedCollectiong Scroll :Vertical Vertical:yes [Line:InvoiceTotalLine] Field:DateeFldutt,ParticlFldutt,ParticlFlduGrptt,VchTypFldutt,VchTypRefFldutt,InvoiceTotallab,InvoiceTotalAns [Field : DateeFldutt] Use :Name Field Setas :"" Width :8 mms Style :Tiny Border :Thin Right [Field :ParticlFldutt] Use :NameField Setas :"" Width :80 mms Style :Tiny Border :thin Right Unique:YES [Field :ParticlFlduGrptt] Use :NameField Setas :"" Width :40 mms Style :Tiny Border :thin Right Invisible :yes Isindirect :yes [Field :VchTypFldutt] Use:Name Field Setas :"" Width :30 mms Style :Tiny Border :Thin Right [Field:VchTypRefFldutt] Use:Name Field Setas :"" Width :30 mms Style :Tiny Border :Thin Right [Field:InvoiceTotallab] Use:Name Field SetAs:If $$isempty:$Name then "" Else #Bankdatansa WIdth:30 mms Border :Thin Right Align:Right [Field:InvoiceTotalAns] Use:Amount Field SetAs:$$TOTAL:InvoiceAmtAns Width:40 mms Border :Thin Right [Line:TotalsLIne] Border: thin box Field:Totalfld1,Totalfld2,Totalfld3,Totalfld4,Totalfld5,Totalfld6,Totalfld6a,Totalfld7,Totalfld8 [Field:Totalfld1] Use:Name Field SetAs:"Total" Width: 8 mms Style:Tiny [Field:Totalfld2] use:Name Field SetAs:"" Width:80 mms Style:Tiny [Field:Totalfld3] use:Name Field SetAs:"" Width:30 mms Style:Tiny [Field:Totalfld4] use:Name Field SetAs:"" Width:30 mms Style:Tiny [Field:Totalfld5] use:Name Field SetAs:"" Width:30 mms Style:Tiny [Collection : SCVTotSal] use : groupbills Fetch : Vouchertypename,Amount,openingBalance [Field:Totalfld6];;ksd use:Amount Field SetAs:$$total:DebittFldua ;;$$CollAmtTotal:SCVTotSal:$$Ifdr:$openingBalance ;;if Not $$IsDr:openingBalance then $$CollAmtTotal:SCVTotSal:$openingBalance else @NAMASHIVAYA Width:30 mms Style:Tiny NAMASHIVAYA:$$CollAmtTotal:SCVTotSal:$$Ifdr:$openingBalance [Field:Totalfld6a] SetAs:"" Width:30 mms Style:Tiny [Field:Totalfld7] use:amount Forex field SetAs:$$total:ReceiptValueansa ;;#Totalfld8-#Totalfld6 ;;$$GetoverallInvAmtTotal;$$GetoverallInvAmtTotal;#Totalfld6-#Totalfld8 Width:20 mms Style:Tiny Format :"DRCR" [Field:Totalfld8] Use:Amount Field SetAs:$$total:BcUSDansa ;;$$collamttotal:MyLedCollectiona:$SAt1 Width:20 mms Style:Tiny [Collection :MyLedCollection] Type : Bills Child Of : $Name ; $ItmGroupName;##GroupName ;$Name ; Fetch:PartyLedgerName,REFERENCE,DATE,Amount,Groupname,OpeningBalance, InventoryEntries.StockItemName, InventoryEntries.ItmGroupName [Collection :MyLedCollectiong] Type : Bills Child Of : $Name ;$ItmGroupName;##GroupName ;$Name Fetch:PartyLedgerName,REFERENCE,DATE,Amount,Groupname,OpeningBalance, InventoryEntries.StockItemName, InventoryEntries.ItmGroupName Cleared :yes [Collection :SCVMyLedCollection2] Type : Bills Child Of : $Name ;$ItmGroupName;##GroupName ; $Name Fetch:PartyLedgerName,REFERENCE,DATE,Amount,Groupname,OpeningBalance, InventoryEntries.StockItemName, InventoryEntries.ItmGroupName [Collection :MyLedCollectiona] Type :Stock Group;ledger Child Of: ##StockGroupName;#BILLINVItemGrp ;$ItmGroupName;##GroupName Belongsto :yes ;Filter:FiltStkGroup [Function:GetoverallInvAmtTotal] Variable:VarAmt2:Amount:0 001:Walk Collection:MyLedCollectiona 002:Set:VarAmt2:##VarAmt2 +$$collamttotal:MyLedCollectiona:$sat2 ;( if Not $$IsDr:$Openingbalance then $ClosingBalance else "" ); Else @Asdf) 003:End Walk 004:Return:##VarAmt2 [#Object:Group] LEDTotal:$$CollAmtTotal:MyLedCollectiona:$ClosingBalance [Collection :MySalesVOucher] Type:Voucher Child of: $$VchTypeSales Fetch:PartyLedgerName,REFERENCE,DATE,Amount,Groupname,OpeningBalance, InventoryEntries.ItmGroupName [System:Formula] FiltStkGroup: $Name = #BILLINVItemGrp ;partyFilterr :$PartyLedgerName=#ParticlFldu ;partyFilterra :##GroupName=#ParticlFlduGrp [System:Formula] sat :if $$IsDr:$Openingbalance Then $Openingbalance Else "" sat1 :$Closingbalance sat2 :(if Not $$IsDr:$Openingbalance then $Openingbalance Else @Asdf )
Dear psjain I need to generate a report "Item Group wise Outstanding Receivable". In above code I m not able to filter Inventoryentries with respect to Item Group, once i have selected a particular Item Group, all Item Group outstanding listing out. please checkout and give me solution. Thanks in advance Regards Sundar
Dear All, I have more than 2000 items grouped separately. At the time of sales order entering or Invoice it becomes difficult to search from such a long list of items.I want a tdl where in i will be Prompted to first select a stock group and then stock items from the selected stock group.Basically i want a stock group wise item filtration features plz help ASAP.
Dear psjain_jal Sir, If you have any solution, please do the needful. it is helpful to me also. i am also trying to achieve this. Thanks