Need to Fetch Sales Order Quantity and Sales Quantity in singke report

Discussion in 'Free Source Codes' started by Ch Suresh, Apr 25, 2024.

    
  1. Ch Suresh

    Ch Suresh Member


    Dear Experts, Here i wrote a code for getting report of sales man wise sales order vs sales
    Here I am unable to fetch Item wise sales order Quantity, Please correct me

    [#Part:CMP Tallyshop Features Left]
    Add: Line:Module Enable

    [Line:Module Enable]
    Fields:Medium Prompt, Module Enable
    Local:Field:Medium Prompt:Set as:"Enabel Sales Man Module?"

    [Field:Module Enable]
    Use:Logical Field
    Storage:ModuleEnable

    [#Part:VTYP BehaviourMain]
    Option:Sales Man Enable:mad:@ModuleEnable

    [!Part:Sales Man Enable]
    Add:Line:At Beginning:Sales Man Enable

    [Line:Sales Man Enable]
    Field:Long Prompt, Logical Field
    Local : Field : Long Prompt : Set as : "Enable Sales Man Module ?"
    Local : Field : Long Prompt :Color : Royal Blue
    Local : Field : Logical Field : Storage : VchTypeEnable
    Local : Field : Logical Field : Set : No
    Space Top : 0.25
    Local:Field : Default : Invisible : NOT $$IsSales:$Parent And not $$IsSalesOrder:$parent


    [System:UDF]
    ModuleEnable : Logical : 1001
    VchTypeEnable : Logical : 1002
    NameofSalesMan : String : 1003

    [System:Formula]
    ModuleEnable:$ModuleEnable:Company:##SVCurrentCompany
    VchTypeEnable:$VchTypeEnable:VoucherType:##SVVouchertype
    Issales:$$IsSales:$VoucherTypeName
    Issalesorders:$$IsSalesOrder:$VoucherTypeName
    OfSelectedBroker:if $$IsSysName:##LedgerName then yes else $NameofSalesMan=##LedgerName

    MyLedStatusFldFilter:if $$IsSysName:##BIAI_SalesManFlt or $$IsEmpty:##BIAI_SalesManFlt then Yes else $NameofSalesMan =##BIAI_SalesManFlt
    BIAI_SBSPartyFltr:if $$IsSysName:##BIAI_SBSPartyFltr or $$IsEmpty:##BIAI_SBSPartyFltr then Yes else $PartyLedgerName =##BIAI_SBSPartyFltr

    [#Part: EI Consignee]
    Option:Sales Man Name:mad:@ModuleEnable And @@VchTypeEnable;Or $$IsSales Or $$IsSalesOrder
    [#Part: EI BaseInfo]
    Option:Sales Man Name:mad:@ModuleEnable And @@VchTypeEnable;Or $$IsSales Or $$IsSalesOrder

    [!Part:Sales Man Name]
    Add:Line:Sales Man Name
    [Line:Sales Man Name]
    Fields : Simple Prompt, SalesMan Namefield
    Local:Field : Simple Prompt : Info : $$LocaleString:"Select Sales Man :"
    ;Local:Field : Simple Prompt : Width : 14.30

    [Field:SalesMan Namefield]
    Use:Ledger Name Field
    Storage:NameofSalesMan
    Set Always:yes
    Table:SalesmanTable, Not Applicable
    Show Table:Always
    Valid:Not $$IsEmpty:$$Value

    [Collection:SalesmanTable]
    Type:Ledger
    Child Of:"Sales Man"
    Native Method:Name
    Format:$Name, 20
    Full Height:Yes
    Belongs To:Yes
    Title:$$LocaleString:"List of Sales Mans"
    Alignment:Right

    [#Menu:Gateway Of Tally]
    Option:TallyGateWay:mad:@ModuleEnable

    [!Menu:TallyGateWay]
    Add:Item:Sales Man Report: DisplayCollection: Sales Man Report

    [Collection:Sales Man Report]
    Collection:AllItems
    Type:Ledger
    Child Of:"Sales Man"
    Variables:LedgerName
    Fetch:*
    Trigger:SalesmanwisecommissionreportTitle
    Belongs To:Yes
    Report:Salesmanwisecommissionreport
    Format:$Name, 50
    Title:$$LocaleString:"List of Sales Mans"

    [Report:SalesmanwisecommissionreportTitle]
    Use:Collection Variable
    Local:Line : Collection Variable : Field : Salesmanwisecommissionreport
    Local:Field: MV Title : Info : $$LocaleString:"Select Name of Sales Man "

    [Field:Salesmanwisecommissionreport]
    Use:Name Field
    Table:SalesManReport
    Show Table:Always
    Modifies:LedgerName
    Variable:Ledgername

    [Report:Salesmanwisecommissionreport]
    Use:DayBook
    Delete:Form
    Add:Forms:Salesmanwisecommissionreport
    Variables:SV FromDate, SV ToDate,BIAI_SalesManFlt,BIAI_SBSPartyFltr
    Title:$$LocaleString:"Sales Man Wise Commission Report For " + ##LedgerName
    Fetch Object:Ledger: ##LedgerName: SalesManCommission
    Variable:Ledgername
    Set:Ledgername:##Ledgername
    Set:BIAI_SalesManFlt:$$SysName:AllItems
    Set:BIAI_SBSPartyFltr:$$SysName:AllItems
    [Form:Salesmanwisecommissionreport]
    Use:Dsptemplate
    Delete:page Break
    Buttons:Change Period
    Keys:ChangePeriod
    Buttons:ExplodeFlag,PrintButton, ExportButton, UploadButton, MailButton
    Top Parts:SalesmanWiseCommReporttitle,SalesmanWiseCommReport
    Width:100% Screen
    Height:100% Screen
    Add:Button:BIAI_SBSPartyFltr, BIAI_SalesManButton

    ;;;;;;;;;;;;;;;;;Report Title Part;;;;;;;;;;;;;;;;
    [Part:SalesmanWiseCommReporttitle]
    Top Lines:SalesmanReportTitle1,SalesmanReporttitle2

    [Line:SalesmanReportTitle1]
    Left Fields:LongPrompt
    Local:Field: LongPrompt: SetAs: $$LocaleString:"Item Wise-Sales Man Commission Report"
    Local:Field: LongPrompt: FullWidth: Yes
    Local:Field: LongPrompt: Color:Blue
    Local:Field: LongPrompt: Align: Centre
    Space Bottom:1

    [Line:SalesmanReporttitle2]
    Right Fields:Medium Prompt
    Left Fields:LongPrompt
    Local:Field: LongPrompt: SetAs: $$LocaleString:"Name Of The Sales Man : " + ##LedgerName
    Local:Field: LongPrompt: FullWidth: Yes
    Local:Field: LongPrompt: Color:Blue
    Local:Field: LongPrompt: Align: Centre
    Local:Field: Medium Prompt : SetAs: $$LocaleString:" Date Of Report : "+@@DSPDateStr
    Local:Field: Medium Prompt : FullWidth: Yes
    Local:Field: Medium Prompt : Color:Blue
    Local:Field: Medium Prompt : Align: Centre
    Space Bottom:0.50

    ;;;;;;;;;;;;;;;;;;;;;;Report Body Part;;;;;;;;;;;;;;;;;;
    [Part:SalesmanWiseCommReport]
    ; Parts:SalesmanWiseCommReportL,SalesmanWiseCommReportR

    ;[Part:SalesmanWiseCommReportL]
    Lines:SalesmanReportColumnTitle, SalesmanReportDetail
    Bottom Lines:SalesmanReportTotal
    Repeat:SalesmanReportDetail: SalesmanwiseReportColl
    Scrolled:Vertical
    Common Borders:Yes
    Totals:RepOrderedQty,RepBilleddQty,RepPendingQty
    [Line:SalesmanReportColumnTitle]
    Line:SalesmanReportColumnTitle1, ;SalesmanReportColumnTitle2
    [Line:SalesmanReportColumnTitle1]
    Left Fields:RepBilldate, ReoBillNo
    Right Field:RepParty, RepAgentname, RepItem, RepOrderedQty, RepBilleddQty,RepPendingQty
    Local:Field:Default:Align:Center
    Local:Field:Default:Skip:Yes
    Local:Field: Default: Type: String
    Delete:Border
    Add:Border:Thick Top

    Local:Field:RepBilldate :Set as:$$LocaleString:"Vch No"
    Local:Field:ReoBillNo :Set as:$$LocaleString:"Vch Date"
    Local:Field:RepParty :Set as:$$LocaleString:"Party Name"
    Local:Field:RepAgentname:Set as:$$LocaleString:"Sales Man Name"
    Local:Field:RepItem :Set as:$$LocaleString:"Item Name"
    Local:Field:RepOrderedQty:Set as:$$LocaleString:"Ordered Quantity"

    Local:Field:RepBilleddQty:Set as:$$LocaleString:"Billed Quantity"
    Local:Field:RepPendingQty:Set as:$$LocaleString:"Pending Quantity"

    [Line:SalesmanReportColumnTitle2]
    Left Fields:RepBilldate, ReoBillNo
    Right Field:RepParty, RepAgentname, RepItem, RepOrderedQty, RepBilleddQty,RepPendingQty

    Local:Field:Default:Align:Center
    Local:Field:Default:Skip:Yes
    Local:Field: Default: Type: String
    Delete:Border
    Add:Border:Column Titels

    Local:Field:RepBilldate :Set as:$$LocaleString:""
    Local:Field:ReoBillNo :Set as:$$LocaleString:""
    Local:Field:RepParty :Set as:$$LocaleString:""
    Local:Field:RepAgentname:Set as:$$LocaleString:""
    Local:Field:RepItem :Set as:$$LocaleString:""
    Local:Field:RepOrderedQty:Set as:$$LocaleString:""

    Local:Field:RepBilleddQty:Set as:$$LocaleString:""
    Local:Field:RepPendingQty:Set as:$$LocaleString:""


    [Line:SalesmanReportTotal]
    Left Fields:RepBilldate, ReoBillNo
    Right Field:RepParty, RepAgentname, RepItem, RepOrderedQty, RepBilleddQty,RepPendingQty

    Local:Field:Default:Align:Center
    ; Local:Field:Default:Border:Thin Left
    Local:Field:Default:Skip:Yes

    Local:Field:RepBilldate :Set as:$$LocaleString:""
    Local:Field:ReoBillNo :Set as:$$LocaleString:""
    Local:Field:RepParty :Set as:$$LocaleString:"Totals"
    Local:Field:RepAgentname:Set as:$$LocaleString:""
    Local:Field:RepItem :Set as:$$LocaleString:""
    Local:Field:RepOrderedQty:Set as:$$Total:RepOrderedQty

    Local:Field:RepBilleddQty:Set as:$$Total:RepBilleddQty
    Local:Field:RepPendingQty:Set as:$$Total:RepPendingQty

    Border:Totals
    [Line:SalesmanReportDetail]
    Left Fields:RepBilldate, ReoBillNo
    Right Field:RepParty, RepAgentname, RepItem, RepOrderedQty, RepBilleddQty,RepPendingQty

    Border:Thin Top Bottom
    Local:Field: Default: Style: Normal
    Key : Line Object Enter Alter, Line Click Object Enter Alter

    [Field:RepBilldate]
    Use:Uni Date Field
    Set:$Date
    Width:12
    Border:ThinLeft
    Alignment:Centre

    [Field:ReoBillNo]
    Use:Name Field
    Set:$VoucherNumber
    Width:12
    Border:ThinLeft
    Alignment:Centre


    [Field:RepParty]
    Use:Name Field
    Set as:$PartyLedgerName
    Full Width:Yes
    Border:ThinLeft
    Alignment:Left

    [Field:RepAgentname]
    Use:Name Field
    Set as:$AgentName
    Width:24
    Border:ThinLeft
    Alignment:Left

    [Field:RepItem]
    Use:Name Field
    Set as:$StockItemName
    Width:24
    Border:ThinLeft
    Alignment:Left

    [Field:RepOrderedQty]
    Use:Qty Primary Field
    Set as:$SalesOrderQty
    Width:18
    Border:ThinLeft
    Alignment:Left

    [Field:RepBilleddQty]
    Use:Qty Primary Field
    Set as:$Billedqty
    Width:18
    Border:ThinLeft
    Alignment:Right

    [Field:RepPendingQty]
    Use:Qty Primary Field
    Set as:$$Number:#RepOrderedQty-$$Number:#RepBilleddQty
    Width:18
    Border:ThinLeftRight
    Alignment:Right
    Format: "NoZero,Percentage"


    [Collection:SalesmanwiseReportCollSourse]
    Type : Vouchers
    Filters:OfSelectedBroker
    Native Method:Date, VoucherTypeName, PartyLedgerName, InventoryEntries.*
    Fetch:*,SalesOrderQty
    Filter:issales, BIAI_SBSPartyFltr,MyLedStatusFldFilter

    [Collection:SalesmanwiseReportColl]
    Source Collection:SalesmanwiseReportCollSourse
    Walk:InventoryEntries
    Fetch:Date,vouchernumber,partyledgername,BasicDueDateOfPymt,SalesOrderQty

    Compute:StockItemName:$StockItemName
    Compute:AgentName:$..NameofSalesMan
    Compute:BilledQty:$BilledQty
    Compute:SalesOrderQty:$$CollQtyTotal:SalesOrderCollection:$Billedqty
    ; Compute:SalesOrderQty:$SalesOrderQty

    [Button:BIAI_SBSPartyFltr]
    Key:F4
    Action:Alter:BIAI_SBSPartyFltr
    Title:"Party Filter"

    [Report : BIAI_SBSPartyFltr]
    Use : Collection Variable
    Title : $$LocaleString:"Select Party"
    Local : Line : Collection Variable : Field : BIAI_SBSPartyFltr
    Local : Field: MV Title : Info : $$LocaleString:"Party Name"
    Local : Form : Modify Variables : Vertical Alignment:Top

    [Field: BIAI_SBSPartyFltr]
    Use : Name Field
    Modifies : BIAI_SBSPartyFltr
    Table:BIAI_SBSPartyFltr,ALLItems
    Show Table:Always

    [Collection:BIAI_SBSPartyFltr]
    Type:Ledger
    Child Of:"Sundry Debtors"
    Belongs To:Yes
    Fetch:Name,Parent
    Format:$Name
    Title:"List of Ledgers"
    Sub Title:"Name"
    [Collection:BIAIALL]
    List:All

    [Button:BIAI_SalesManButton]
    Key:F5
    Action:Modify Variables:BIAI_SalesManFlt
    Title:"SalesMan Filter"
    Inactive:not ##UpdateStatusSO
    [Report : BIAI_SalesManFlt]
    Use : Collection Variable
    Title : $$LocaleString:"Select Agent"
    Local : Line : Collection Variable : Field : BIAI_SalesManFlt
    Local : Field: MV Title : Info : $$LocaleString:"Agent Name"
    Help : @@HlpSLedger

    [Field:BIAI_SalesManFlt]
    Use:Name Field
    Table:SalesmanTable, ALLItems
    Show Table:Always
    Modifies:BIAI_SalesManFlt
    Variable:BIAI_SalesManFlt

    [Variable:BIAI_SalesManFlt]
    Type:String
    Persist:Yes

    [Variable:BIAI_SBSPartyFltr]
    Type:String
    Persist:Yes

    [System:Variable]
    BIAI_SalesManFlt:$$SysName:AllItems
    BIAI_SBSPartyFltr:$$SysName:AllItems


    [Part:SalesmanWiseCommReportR]
    Line:SalesmanWiseCommReportRTitlr, SalesmanWiseCommReportRBody
    Repeat:SalesmanWiseCommReportRBody:SalesOrderCollection
    [Line:SalesmanWiseCommReportRTitlr]
    Field:Name Field
    Local:Field:Name Field:Info:"Ordered Qty"

    [Line:SalesmanWiseCommReportRBody]
    Field:SalesmanWiseCommReportRBody

    [Field:SalesmanWiseCommReportRBody]
    Use:Qty Primary Field
    Set as:$BilledQty
    Width:18
    Border:ThinLeft
    Alignment:Right

    [Collection:SalesOrderCollection]
    Source Collection:SalesOrderCollectionMain
    Walk:InventoryEntries
    Fetch:Date,vouchernumber,partyledgername,BasicDueDateOfPymt,SalesOrderQty

    Fetch:*.*
    [Collection:SalesOrderCollectionMain]
    Type:Vouchers
    Filter:issalesorders
    Native Method:Date, VoucherTypeName, PartyLedgerName, InventoryEntries.*
    Fetch:*,SalesOrderQty,InventoryEntries.Billedqty
     


  2. Ch Suresh

    Ch Suresh Member


    Please anyone help me, Since morning I tried multiple methods, but not working

    I think I need a Filter like $$Filtervalue
     


Share This Page