Payment Allocation

Dear All,
I have to assign in one payment allocation "Payment Advices" and "Other Payments" as well. But this the system doesn't allow and the following error message will be displayed:
        "Combining advices of advice collection and other payments not possible".
Does anyone have an idea how we cayn post it?
Thanks a lot and best regards!
Katrin Gruber

Hi Katrin,
what do you mean with other payments? Or what is it in your concrete issue?
The error message says "payment advices of advice collection"...is it right, that you have more as one advice to allocate?
I think the concrete case is more transparent to the community if you would give us more details of the allocation: How many advices from how many different customers/suppliers? Which other payments? etc
Best Regards,
Andreas

Similar Messages

  • Payment allocation Error

    When i try to do the payment allocation for a supplier through AP-Payments, LOV does'nt show the debit and credit balances avaliable for a particular supplier. Instead, it throws and error saying "FRM 40502: Oracle error: Unable to read list of values" - Please let me know regarding how to resove this error. you can mail me to [email protected]

    Hi,
    Define this message as Warning by OBA5. If it isn't allowed go first into OBMSG.
    Regards

  • Wrong payment allocation

    Hi, if I allocate incoming payment to the wrong invoices for a particular customer, can i reverse the payment allocation and how? and what about I manually do the reconciliation from the Banking -- Automatic reconciliation module? Thanks for advice.

    When you are in Incoming Payment screen, select 'Data--> Cancel'.  That will reverse the incoming payment.
    It might bet a bit messy if you have deposited as you will have to reverse the deposit before you can reverse the Incoming payment.

  • F-28 and F-32 Payment Allocation

    Dear Experts,
    Would like to request some of your inputs with regards to partial allocation of payments.
    Using the tcodes F-28 and F-32 for payment allocation creates a new document for the remaining unpaid.
    Shown below is an example of allocation for several billing documents.
    How would you identify which of the cleared documents have the remaining unpaid billing?
    Payment                             
       001 DZ  150,000.00
    Billing Documents
       002 AB    30,000.00
       003 FC     45,000.00
       004 DZ     70,000.00
       005 LT      30,000.00
         Total    175,000.00
    Allocation                            Clearing
       005 LT      30,000.00           001
       003 FC     45,000.00           001
       004 DZ     70,000.00           001
       002 AB       5,000.00           001
        Total      150,000.00
    Remaining Unpaid
       001 DZ       25,000.00
    Thanks in advance.
    Kath

    I understood what you explained. That was a very good answer, however i have 1 more question.
    1. For Eg: I posted a customer invoice for Rs 100,000 and customer paid the whole amont. After doing fb70 can we do f-32 directly? Or we have to do f-28 first and then clear it in f-32.
    My problem is, customers are set up on company code 1000, but this cocd does not have any house bank and hence no bank GL account. 
    We do the FB70 on company code 1000. However I need to clear this amount using a bank gl account of company code 2000. Company code 2000 is the main Cocd and has a house bank and bank GL account.
    So im not able to select a CoCd 2000 bank gl account  as it doesnt exist while doing f-28 for company code 1000 who received the invoice and payment. But  im able to do this on f-32. When i click on OVERVIEW in f-32, then at the bottom there is a field for NEW Company Code.It uses cross company clearing.
    Hence i want to know, if it is ok to do a f-32 directly after doing a FB70.
    I hope my scenario is clear.
    Thanks.

  • Down payment allocation in F-54

    Hi All,
    I want to reserve the advance payment made for a particular PO get reserved in F-54, is there an user exit or some enhancement in which i can allocate an advance payment based on the PO number which is already entered while making advance payment request.
    Any help on the above issue will be highly appreciated.
    Thanks in advance for all the help.

    Hello,
       While making advance payment through F-48 are you choosen purchase order means you book advance against purchase order. now to reverse this TDS ( deducted at the time of advance payment). In F-54 you have to give only relevant invoice number ( booked through MIRO and tds deducted) so that system will reverse the TDS amount based on invoice.
    You can make advance payment without down payment request.
    In case of any problem revert me back
    Regards,
    Sankar

  • Disputing a late payment reporting. What counts as "proof'?

    I am disputing a account that has a "Late payment" reporting.  I foolishy wrote down the confirmation in a notebook, and have lost track of it. I know it was paid, and the account shouldn't be reported as over 60 days late.  I am doing my best to find any proof. I know I called the creditor on a speific date before the payment was due, and was talking to them for a few minutes.  I pulled my telephone records, and it does show I called the creditor,and talked to them for 18 minutes, yet before I found this, the creditor said they couldn't see a call was made to them.  I also have a "payment allocation" paper they sent to me that says a transcation for "$100" dollars was made on 03/18/2015, and my phone records have the phone call taking place on 03/17/2015. I just found these documents a day ago.  I don't understand how a phone call wouldn't be recorded, but yet it shows on my phone bill that I talked to them for 18 minutes. I googled the number, and it was the creditors number.  They have said i never did talk to them ,but that was before I went through my phone bill. Do i have anything worth sending them to show that what they have told me isn't correct? 

    mnl wrote:
    So how are they allowed to make errors, but if we do, then there are problems? Navient(Sallie Mae) told me 2 times that they reviewed the call logs, and there records didn't show a call at all. Was told they looked thoroughly, so obviously they didn't, or there is a issue with their system. Proof of the phone call shows that there is a error on their end/system makes errors, if there is one error/mistake, then that shows more errors could happen on their end. I went through bank statements, and it shows for 03/18 , which is the same day the phone call took place (Which I have the phone bill)  Bank statement shows on 03/18: 147.20 MERCHANT PAYMENT AT LOC 360 12061 Bluemont Way Reston VA Looked this up, and it's Sallie Mae/Navient. I don't have a voided check. I paid by phone.  The phone bill, and bank statement is all I have.  I've read online about how Sallie Mae/Navient has lost peoples payments, and made errors just like this plenty of times. Ridiculous.   You're absolutely right. The debt collection industry essentially wrote the laws (FCRA and FDCPA) with some input from  lawmakers - or to put it another way, the lawmakers wrote the laws with a great deal of input from the debt collection industry. So while there are *some* protections for us, the deck IS stacked against us to a great degree. The only defense we really have is to learn how the system works, both for and against us, in order to play this game on as level a playing field as we can possibly make.

  • Automatic clearing on the basis of contract no.

    Hi Friends
    I am facing a issue related to clearing on the basis of contract no..
    Details are as below,
    1. I am having 3 open items for 1 BP (customer). These are against a single contract amounting to 1775 EUR.
    2. In my EBS I am having a receipt of Rs1.1775 EUR from this customer. Contract no. is also getting identified & is mentioned in Payment advice notes.
    3. The flow types of open items are already customised in "Value Allocation for Incoming Payments Allocation ".
    Still the open items are not getting cleared  against this receipt.
    Please inform whether I am missing anything?.
    Full points will be granted.
    Kindly help.
    Thanks & Regards
    Bhairavi

    Hi Bhairavi,
    could you please check if you have done all settings mentioned in customizing for Electronic Account Statement for RE-FX:
    Path: customizing RE-FX - Accounting - Integration FI-GL, FI-AR, FI-AP - Incoming Payments Control - Prepare Account Statement Entry
    -> Electronic Account Statement Entry
    Regards, Franz

  • Business Scenario Example

    Hello All...
    can someone help in giving a generic FI/CO business scenario. And the process flow.
    thnx in advance
    NT

    Hi,
    Normally business scenarios in finance
    a. Procure to Pay - Purchase Req, Purchase order, Goods Receipt, Invoice Receipt,  Payment to vendor, Bank reconciliation (this is End to End process)
    b. Order to cash - Sale order, Delivery, Post goods issue, billing, Incoming payment, Payment allocation, Dunning, Interest calculation, customer statement (End to end)
    c. Asset Accounting - Project system, WBS element, Purchase order, Receive asset, Invoice booking, Asset capitalization,  depreciation,  retirement, transfer.
    These are some of main business scenarios
    Thanks
    Ashok- Assign points if this is useful

  • FI Concepts

    Hi all,
    I am a layman to FI, can anyone provide me some basic concepts as well as some important topics where in i can understand the basic structure of FI FLow.
    Thanks
    Zaf.

    Hi,
    <b>Document flow confusion in SAP FI</b>
    I have a problem understanding basic things like how a document flows in the Sap system. When posting a customer invoice the subledger will be debited with that amount, now my confusion is will the same amount be posted to the G/L only or the very same amount will also be posted to the reconciliation general ledger - making 3 postings or The recon acc is the G/L . I don't see 3 postings happening because then 2 debits will be Posted against one debit -please clarify me on this.
    Also the different between the G/L, Special ledgers and the recon acc is not clear to me.
    <b>Customer and Vendor accounts</b> are maintained in a subledger. Posting to these accounts will also be posted to the A/R and A/P reconciliation accounts. All Reconciliation accouints are GL accounts.
    All <b>G/L accounts</b> are not reconciliation accounts.
    Why is this done?
    In large businesses, there will be hundreds/thousands of customers/vendors. All these are personalaccounts (there are three types of accounts: nominal, personal and real). These personal accounts are grouped in to sub-ledgers and any posting to them is reconciled to the G/L
    via the reconciliation accounts.
    For fulfilling completing the double entry system accounting the Reconciliation accounts i.e., Accounts Receivable and Accounts Payable are used. All the Vendors are grouped under Acounts Payable & Customers are grouped under Accounts Receivable. And also always any time the balance in reconciliation account shows as zero.
    <b>Ex: 1) Vendors transaction:</b>
    For Invoice posting:
    Inventory A/c Dr
    To Vendor A/c................Accounts Payable A/c (Reconciliation Ledger)
    (In SAP since we are linking in the G/L Master Accounts Payable with the Reconciliation Accounts type setting as Vendors. Hence, with one entry 3 Accounts are automatically updated)
    Accounts Payable is Liability & Inventory is Current Assets.
    For Payment to Vendor:
    Vendor A/c Dr.....Accounts Payable A/c
    To Bank/ Cash A/c
    <b>Ex:2) Customer Transaction:</b>
    Sales Invoice Posting:
    Customer A/c Dr...Accounts Receivable A/c (Reconciliation A/c)
    To Sales A/c
    Receipt Posting:
    Bank A/c Dr
    To Customer A/c...........Accounts Receivable A/c
    In Normal Accounting the Reconciliation Accounts are called as Control Accounts and we pass 2 entries for each transaction i.e., Sale, as following:
    1)  Customer A/c           Dr       (Sales Ledger / Accounts Receivable A/c)
            To Sales A/c                       (General Ledger)
       2)  Accounts Receivable A/c Dr  (General Ledger)
            To Customer A/c                 (Sales Ledger Adjustment A/c)
    Hence, any time the Control A/c balance is zero.
    These are basic accounting differentiation for different types of accoutns. This is a basic accounting concept and is not specifically mentioned anywhere in SAP terminology.
    <b>Personal accounts:</b>
    Accounts in the name of individuals, organizations etc.
    For example, Company A A/c, XYZ limited co A/C, Suresh A/C, Indian Bank A/C etc
    <b>Real Accounts:</b>
    These are accounts related to assets, both real and tangible.
    example, furniture a/c, machinery a/c, accounts receivables a/c etc
    <b>Nominal Accounts:</b>
    These are related to incomes/expenditures and profit/losses.
    for example, sales A/c, salary a/c etc
    <b>List of tables :</b>
    AGKO Cleared Accounts
    ANAR Asset Types
    ANAT Asset type text
    ANEK Document Header Asset Posting
    ANEP Asset Line Items
    ANEV Asset downpymt settlement
    ANKT Asset classes- Description
    ANLA Asset Master Record Segment
    ANLB Depreciation terms
    ANLC Asset Value Fields
    ANLH Main asset number
    AT02T Transaction Activity Category- Description
    AT02A Transaction Code for Menu TIMN
    AT10 Transaction type
    AT10T Name of Transaction Type
    BKDF Document Header Supplement for Recurring Entry
    BKORM Accounting Correspondence Requests
    BKPF Accounting Document Header
    BLPK Document log header
    BLPP Document log item
    BLPR Document Log Index and Planned Order (Backflush)
    BNKA Bank master record
    BP000 Business Partner Master (General Data)
    BPBK Doc.Header Controlling Obj.
    BPEG Line Item Total Values Controlling Obj.
    BPEJ Line Item Annual Values Controlling Obj.
    BPEP Line Item Period Values Controlling Obj.
    BPGE Totals Record for Total Value Controlling obj.
    BPJA Totals Record for Annual Total Controlling Obj.
    BSAD Accounting- Secondary Index for Customers (Cleared Items)
    BSAK Accounting- Secondary Index for Vendors (Cleared Items)
    BSAS Accounting- Secondary Index for G/L Accounts (Cleared Items)
    BSEC One-Time Account Data Document Segment
    BSEG Accounting Document Segment
    BSID Accounting- Secondary Index for Customers
    BSIK Accounting- Secondary Index for Vendors
    BSIM Secondary Index, Documents for Material
    BSIS Accounting- Secondary Index for G/L Accounts
    CEPC Profit Center Master Data Table
    CEPCT Texts for Profit Center Master Data
    COBRA Settlement Rule for Order Settlement
    COBRB Distribution Rules Settlement Rule Order Settlement
    COKA CO Object- Control Data for Cost Elements
    COSP CO Object- Cost Totals for External Postings
    COSS CO Object- Cost Totals for Internal Postings
    CRCO Assignment of Work Center to Cost Center
    CSKA Cost Elements (Data Dependent on Chart of Accounts)
    CSKB Cost Elements (Data Dependent on Controlling Area)
    CSLA Activity master
    FEBEP Electronic Bank Statement Line Items
    FPLA Billing Plan
    FPLT Billing Plan- Dates
    GLPCT EC-PCA- Totals Table
    KNA1 General Data in Customer Master
    KOMK Pricing Communication Header
    MAHNV Management Records for the Dunning Program
    REGUT TemSe - Administration Data
    SKA1 G/L Account Master (Chart of Accounts)
    SKAT G/L Account Master Record (Chart of Accounts- Description)
    SKB1 G/L account master (company code)
    T003T Document Type Texts
    T007S Tax Code Names
    T087J Text
    TAPRFT Text tab. for investment profile
    TKA01 Controlling Areas
    TKA09 Basic Settings for Versions
    TKVS CO Versions
    TZB0T Flow types text table
    TZPAT Financial Assets Management product type texts
    VBSEGS Document Segment for G/L Accounts Document Parking
    VTBFHA Transaction
    VTBFHAPO Transaction Flow
    VTBFHAZU Transaction Activity
    VTBFINKO Transaction Condition
    VTIDERI Master Data Listed Options and Futures
    VTIFHA Underlying transaction
    VTIFHAPO Underlying transaction flows
    VTIFHAZU Underlying transaction status table
    VTIOF Options Additional Data
    VWPANLA Asset master for securities
    <b>SAP FI Transaction Code List</b>
    How to reverse a cleared documents?
    The following procedure is to be followed to reverse the cleared document.
    1. Reset the cleared document and reverse the document.
    Path # Accounting --> financial Accounting --> C/L > Document> Reset Cleared items - T. code : FBRA
    In this screen select resetting and reverse radio button and give the reversal reason. : 01 and save the settings.
    *-- Maddipati
    F-01    Enter Sample Document
    F-02    Enter G/L Account Posting
    F-03    Clear G/L Account
    F-04    Post with Clearing
    F-05    Post Foreign Currency Valuation
    F-06    Post Incoming Payments
    F-07    Post Outgoing Payments
    F-18    Payment with Printout
    F-19    Reverse Statistical Posting
    F-20    Reverse Bill Liability
    F-21    Enter Transfer Posting
    F-22    Enter Customer Invoice
    F-23    Return Bill of Exchange Pmt Request
    F-25    Reverse Check/Bill of Exch.
    F-26    Incoming Payments Fast Entry
    F-27    Enter Customer Credit Memo
    F-28    Post Incoming Payments
    F-29    Post Customer Down Payment
    F-30    Post with Clearing
    F-31    Post Outgoing Payments
    F-32    Clear Customer
    F-33    Post Bill of Exchange Usage
    F-34    Post Collection
    F-35    Post Forfaiting
    F-36    Bill of Exchange Payment
    F-37    Customer Down Payment Request
    F-38    Enter Statistical Posting
    F-39    Clear Customer Down Payment
    F-40    Bill of Exchange Payment
    F-41    Enter Vendor Credit Memo
    F-42    Enter Transfer Posting
    F-43    Enter Vendor Invoice
    F-44    Clear Vendor
    F-46    Reverse Refinancing Acceptance
    F-47    Down Payment Request
    F-48    Post Vendor Down Payment
    F-49    Customer Noted Item
    F-51    Post with Clearing
    F-52    Post Incoming Payments
    F-53    Post Outgoing Payments
    F-54    Clear Vendor Down Payment
    F-55    Enter Statistical Posting
    F-56    Reverse Statistical Posting
    F-57    Vendor Noted Item
    F-58    Payment with Printout
    F-59    Payment Request
    F-60    Maintain Table: Posting Periods
    F-62    Maintain Table: Exchange Rates
    F-63    Park Vendor Invoice
    F-64    Park Customer Invoice
    F-65    Preliminary Posting
    F-66    Park Vendor Credit Memo
    F-67    Park Customer Credit Memo
    F-90    Acquisition from purchase w. vendor
    F-91    Asset acquis. to clearing account
    F-92    Asset Retire. frm Sale w/ Customer
    F.01    ABAP/4 Report: Balance Sheet
    F.02    Compact Journal
    F.03    Reconciliation
    F.04    G/L: Create Foreign Trade Report
    F.05    Foreign Currency Val.: Open Items
    F.06    Foreign Currency Valuation:G/L Assts
    F.07    G/L: Balance Carried Forward
    F.08    G/L: Account Balances
    F.09    G/L: Account List
    F.0A    G/L: FTR Report on Disk
    F.0B    G/L: Create Z2 to Z4
    F.10    G/L: Chart of Accounts
    F.11    G/L: General Ledger from Doc.File
    F.12    Advance Tax Return
    F.13    ABAP/4 Report: Automatic Clearing
    F.14    ABAP/4 Report: Recurring Entries
    F.15    ABAP/4 Report: List Recurr.Entries
    F.16    ABAP/4 Report: G/L Bal.Carried Fwd
    F.17    ABAP/4 Report: Cust.Bal.Confirmation
    F.18    ABAP/4 Report: Vend.Bal.Confirmation
    F.19    G/L: Goods/Invoice Received Clearing
    F.1A    Customer/Vendor Statistics
    F.1B    Head Office and Branch Index
    F.20    A/R: Account List
    F.21    A/R: Open Items
    F.22    A/R: Open Item Sorted List
    F.23    A/R: Account Balances
    F.24    A/R: Interest for Days Overdue
    F.25    Bill of Exchange List
    F.26    A/R: Balance Interest Calculation
    F.27    A/R: Periodic Account Statements
    F.28    Customers: Reset Credit Limit
    F.29    A/R: Set Up Info System 1
    F.2A    Calc.cust.int.on arr.: Post (w/o OI)
    F.2B    Calc.cust.int.on arr.: Post(with OI)
    F.2C    Calc.cust.int.on arr.: w/o postings
    F.2D    Customrs: FI-SD mast.data comparison
    F.2E    Reconciliation Btwn Affiliated Comps
    F.2F    Management Acct Group Reconciliation
    F.2G    Create Account Group Reconcil. G/L
    F.30    A/R: Evaluate Info System
    F.31    Credit Management - Overview
    F.32    Credit Management - Missing Data
    F.33    Credit Management - Brief Overview
    F.34    Credit Management - Mass Change
    F.35    Credit Master Sheet
    F.36    Adv.Ret.on Sls/Pur.Form Printout(DE)
    F.37    Adv.rept.tx sls/purch.form print (BE
    F.38    Transfer Posting of Deferred Tax
    F.39    C FI Maint. table T042Z (BillExcTyp)
    F.40    A/P: Account List
    F.41    A/P: Open Items
    F.42    A/P: Account Balances
    F.44    A/P: Balance Interest Calculation
    F.45    A/P: Set Up Info System 1
    F.46    A/P: Evaluate Info System
    F.47    Vendors: calc.of interest on arrears
    F.48    Vendors: FI-MM mast.data comparison
    F.4A    Calc.vend.int.on arr.: Post (w/o OI)
    F.4B    Calc.vend.int.on arr.: Post(with OI)
    F.4C    Calc.vend.int.on arr.: w/o postings
    F.50    G/L: Profitability Segment Adjustmnt
    F.51    G/L: Open Items
    F.52    G/L: Acct Bal.Interest Calculation
    F.53    G/L: Account Assignment Manual
    F.54    G/L: Structured Account Balances
    F.56    Delete Recurring Document
    F.57    G/L: Delete Sample Documents
    F.58    OI Bal.Audit Trail: fr.Document File
    F.59    Accum.Clas.Aud.Trail: Create Extract
    F.5A    Accum.Clas.Aud.Trail: Eval.Extract
    F.5B    Accum.OI Aud.Trail: Create Extract
    F.5C    Accum.OI Audit Trail: Display Extr.
    F.5D    G/L: Update Bal. Sheet Adjustment
    F.5E    G/L: Post Balance Sheet Adjustment
    F.5F    G/L: Balance Sheet Adjustment Log
    F.5G    G/L: Subseq.Adjustment(BA/PC) Sp.ErA
    F.5I    G/L: Adv.Rep.f.Tx on Sls/Purch.w.Jur
    F.61    Correspondence: Print Requests
    F.62    Correspondence: Print Int.Documents
    F.63    Correspondence: Delete Requests
    F.64    Correspondence: Maintain Requests
    F.65    Correspondence: Print Letters (Cust)
    F.66    Correspondence: Print Letters (Vend)
    F.70    Bill/Exchange Pmnt Request Dunning
    F.71    DME with Disk: B/Excha. Presentation
    F.75    Extended Bill/Exchange Information
    F.77    C FI Maintain Table T045D
    F.78    C FI Maintain Table T045B
    F.79    C FI Maintain Table T045G
    F.80    Mass Reversal of Documents
    F.81    Reverse Posting for Accr./Defer.Docs
    F.90    C FI Maintain Table T045F
    F.91    C FI Maintain Table T045L
    F.92    C FI Maintain T012K (Bill/Exch.)
    F.93    Maintain Bill Liability and Rem.Risk
    F.97    General Ledger: Report Selection
    F.98    Vendors: Report Selection
    F.99    Customers: Report Selection
    F/LA    Create Pricing Report
    F/LB    Change pricing reports
    F/LC    Display pricing reports
    F/LD    Execute pricing reports
    F00     SAPoffice: Short Message
    F000    Accounting
    F010    ABAP/4 Reporting: Fiscal Year Change
    F01N    Debit position RA single reversal
    F01O    Vacancy RU single reversal
    F01P    Accruals/deferrals single reversal
    F01Q    Debit position MC single reversal
    F01R    MC settlement single reversal
    F01S    Reverse Periodic Posting
    F01T    Reverse Acc./Def. General Contract
    F040    Reorganization
    F041    Bank Master Data Archiving
    F042    G/L Accounts Archiving
    F043    Customer Archiving
    F044    Vendor Archiving
    F045    Document Archiving
    F046    Transaction Figures Archiving
    F101    ABAP/4 Reporting: Balance Sheet Adj.
    F103    ABAP/4 Reporting: Transfer Receivbls
    F104    ABAP/4 Reporting: Receivbls Provisn
    F107    FI Valuation Run
    F110    Parameters for Automatic Payment
    F111    Parameters for Payment of PRequest
    F13E    ABAP/4 Report: Automatic Clearing
    F150    Dunning Run
    F48A    Document Archiving
    F53A    Archiving of G/L Accounts
    F53V    Management of G/L Account Archives
    F56A    Customer Archiving
    F58A    Archiving of Vendors
    F61A    Bank archiving
    F64A    Transaction Figure Archiving
    F66A    Archiving of Bank Data Storage
    F8+0    Display FI Main Role Definition
    F8+1    Maintain FI Main Role Definition
    F8+2    Display FI Amount Groups
    F8+3    Maintain FI Amount Groups
    F8B4    C FI Maintain Table TBKDC
    F8B6N   C FI Maintain Table TBKPV
    F8BC    C FI Maintain Table TBKFK
    F8BF    C FI Maintain Table T042Y
    F8BG    Maintain Global Data for F111
    F8BH    Inconsistencies T042I and T042Y
    F8BJ    Maintain Clearing Accts (Rec.Bank)
    F8BK    Maintain ALE-Compatible Pmnt Methods
    F8BM    Maintain numb.range: Payment request
    F8BN    Corr.Acctg Documents Payment Block
    F8BO    Payment request archiving
    F8BR    Levels for Payment Requests
    F8BS    Detail display of payment requests
    F8BT    Display Payment Requests
    F8BU    Create payment runs automatically
    F8BV    Reversal of Bank-to-Bank Transfers
    F8BW    Reset Cleared Items: Payt Requests
    F8BZ    F111 Customizing
    F8XX    Payment Request No. Ranges KI3-F8BM
    FA39    Call up report with report variant
    FAKA    Config.: Show Display Format
    FAKP    Config.: Maintain Display Format
    FAR1    S FI-ARI Maint. table T061A
    FARA    S FI-ARI Maint. table T061P/Q
    FARB    C FI-ARI Maint. table T061R
    FARI    AR Interface: Third-party applicatns
    FARY    Table T061S
    FARZ    Table T061V
    FAX1    BC sample SAP DE 2.1
    FAX2    BC sample 2 SAP DE 2.1
    FB00    Accounting Editing Options
    FB01    Post Document
    FB02    Change Document
    FB03    Display Document
    FB03Z   Display Document/Payment Usage
    FB04    Document Changes
    FB05    Post with Clearing
    FB05_OLD Post with clearing
    FB07    Control Totals
    FB08    Reverse Document
    FB09    Change Line Items
    FB10    Invoice/Credit Fast Entry
    FB11    Post Held Document
    FB12    Request from Correspondence
    FB13    Release for Payments
    FB1D    Clear Customer
    FB1K    Clear Vendor
    FB1S    Clear G/L Account
    FB21    Enter Statistical Posting
    FB22    Reverse Statistical Posting
    FB31    Enter Noted Item
    FB41    Post Tax Payable
    FB50    G/L Acct Pstg: Single Screen Trans.
    FB60    Enter Incoming Invoices
    FB65    Enter Incoming Credit Memos
    FB70    Enter Outgoing Invoices
    FB75    Enter Outgoing Credit Memos
    FB99    Check if Documents can be Archived
    FBA1    Customer Down Payment Request
    FBA2    Post Customer Down Payment
    FBA3    Clear Customer Down Payment
    FBA6    Vendor Down Payment Request
    FBA7    Post Vendor Down Payment
    FBA7_OLD Post Vendor Down Payment
    FBA8     Clear Vendor Down Payment
    FBA8_OLD Clear Vendor Down Payment
    FBB1    Post Foreign Currency Valn
    FBBA    Display Acct Determination Config.
    FBBP    Maintain Acct Determination Config.
    FBCJ    Cash Journal
    FBCJC0  C FI Maintain Tables TCJ_C_JOURNALS
    FBCJC1  Cash Journal Document Number Range
    FBCJC2  C FI Maint. Tables TCJ_TRANSACTIONS
    FBCJC3  C FI Maintain Tables TCJ_PRINT
    FBCOPY  Copy Function Module
    FBD1    Enter Recurring Entry
    FBD2    Change Recurring Entry
    FBD3    Display Recurring Entry
    FBD4    Display Recurring Entry Changes
    FBD5    Realize Recurring Entry
    FBD9    Enter Recurring Entry
    FBDF    Menu Banque de France
    FBE1    Create Payment Advice
    FBE2    Change Payment Advice
    FBE3    Display Payment Advice
    FBE6    Delete Payment Advice
    FBE7    Add to Payment Advice Account
    FBF1    C80 Reporting Minus Sp.G/L Ind.
    FBF2    Financial Transactions
    FBF3    Control Report
    FBF4    Download Documents
    FBF5    Reports Minus Vendor Accounts
    FBF6    Document Changes
    FBF7    C80 Reports Minus Sp.G/L Ind.
    FBF8    C84 Reports
    FBFT    Customizing BDF
    FBIPU   Maintain bank chains for partner
    FBKA    Display Accounting Configuration
    FBKF    FBKP/Carry Out Function (Internal)
    FBKP    Maintain Accounting Configuration
    FBL1    Display Vendor Line Items
    FBL1N   Vendor Line Items
    FBL2    Change Vendor Line Items
    FBL2N   Vendor Line Items
    FBL3    Display G/L Account Line Items
    FBL3N   G/L Account Line Items
    FBL4    Change G/L Account Line Items
    FBL4N   G/L Account Line Items
    FBL5    Display Customer Line Items
    FBL5N   Customer Line Items
    FBL6    Change Customer Line Items
    FBL6N   Customer Line Items
    FBM1    Enter Sample Document
    FBM2    Change Sample Document
    FBM3    Display Sample Document
    FBM4    Display Sample Document Changes
    FBMA    Display Dunning Procedure
    FBME    Banks
    FBMP    Maintain Dunning Procedure
    FBN1    Accounting Document Number Ranges
    FBN2    Number Range Maintenance: FI_PYORD
    FBP1    Enter Payment Request
    FBR1    Post with Reference Document
    FBR2    Post Document
    FBRA    Reset Cleared Items
    FBRC    Reset Cleared Items (Payment Cards)
    FBS1    Enter Accrual/Deferral Doc.
    FBTA    Display Text Determin.Configuration
    FBTP    Maintain Text Determin.Configuration
    FBU2    Change Intercompany Document
    FBU3    Display Intercompany Document
    FBU8    Reverse Cross-Company Code Document
    FBV0    Post Parked Document
    FBV1    Park Document
    FBV2    Change Parked Document
    FBV3    Display Parked Document
    FBV4    Change Parked Document (Header)
    FBV5    Document Changes of Parked Documents
    FBV6    Parked Document $
    FBVB    Post Parked Document
    FBW1    Enter Bill of Exchange Pmnt Request
    FBW2    Post Bill of Exch.acc.to Pmt Request
    FBW3    Post Bill of Exchange Usage
    FBW4    Reverse Bill Liability
    FBW5    Customer Check/Bill of Exchange
    FBW6    Vendor Check/Bill of Exchange
    FBW7    Bank file to file system (for FBWD)
    FBW8    File to Bank (for Transaction FBWD)
    FBW9    C FI Maintain Table T045DTA
    FBWA    C FI Maintain Table T046a
    FBWD    Returned Bills of Exchange Payable
    FBWD2   Parameter Transaction for FBWD
    FBWE    Bill/Exch.Presentatn - International
    FBWQ    C FI Maintain Table T045T
    FBWR    C FI Maintain Table T045W
    FBWS    C FI Maintain Table T046s
    FBZ0    Display/Edit Payment Proposal
    FBZ1    Post Incoming Payments
    FBZ2    Post Outgoing Payments
    FBZ3    Incoming Payments Fast Entry
    FBZ4    Payment with Printout
    FBZ5    Print Check For Payment Document
    FBZ8    Display Payment Run
    FBZA    Display Pmnt Program Configuration
    FBZG    Failed Customer Payments
    FBZP    Maintain Pmnt Program Configuration
    FC10    Financial Statements Comparison
    FC11    Data Extract for FI Transfer
    FC80    Document C80
    FC82    Document C82
    FCAA    Check Archiving
    FCC1    Payment Cards: Settlement
    FCC2    Payment Cards: Repeat Settlement
    FCC3    Payment Cards: Delete Logs
    FCC4    Payment Cards: Display Logs
    FCCR    Payment Card Evaluations
    FCH1    Display Check Information
    FCH2    Display Payment Document Checks
    FCH3    Void Checks
    FCH4    Renumber Checks
    FCH5    Create Check Information
    FCH6    Change Check Information/Cash Check
    FCH7    Reprint Check
    FCH8    Reverse Check Payment
    FCH9    Void Issued Check
    FCHA    Check archiving
    FCHB    Check retrieval
    FCHD    Delete Payment Run Check Information
    FCHE    Delete Voided Checks
    FCHF    Delete Manual Checks
    FCHG    Delete cashing/extract data
    FCHI    Check Lots
    FCHK    Check Tracing Initial Menu
    FCHN    Check Register
    FCHR    Online Cashed Checks
    FCHT    Change check/payment allocation
    FCHU    Create Reference for Check
    FCHV    C FI Maintain Table TVOID
    FCHX    Check Extract - Creation
    FCIWCU  BW Customizing for CS
    FCIWD00 Download InfoObject text
    FCIWD10 Download InfoObject hierarchies
    FCKR    International cashed checks
    FCMM    C FI Preparations for consolidation
    FCMN    FI Initial Consolidation Menu
    FCV1    Create A/R Summary
    FCV2    Delete A/R Summary
    FCV3    Early Warning List
    FC_BW_BEX       Business Explorer Analyser
    FC_BW_RSA1      BW Administrator Workbench
    FC_BW_RSZDELETE Delete BW Query Objects
    FC_BW_RSZV      Maintain BW Variables
    FD-1    Number range maintenance: FVVD_RANL
    FD01    Create Customer (Accounting)
    FD02    Change Customer (Accounting)
    FD02CORE Maintain customer
    FD03    Display Customer (Accounting)
    FD04    Customer Changes (Accounting)
    FD05    Block Customer (Accounting)
    FD06    Mark Customer for Deletion (Acctng)
    FD08    Confirm Customer Individually(Actng)
    FD09    Confirm Customer List (Accounting)
    FD10    Customer Account Balance
    FD10N   Customer Balance Display
    FD10NA  Customer Bal. Display with Worklist
    FD11    Customer Account Analysis
    FD15    Transfer customer changes: send
    FD16    Transfer customer changes: receive
    FD24    Credit Limit Changes
    FD32    Change Customer Credit Management
    FD33    Display Customer Credit Management
    FD37    Credit Management Mass Change
    FDCU    Loans customizing menu
    FDFD    Cash Management Implementation Tool
    FDI0    Execute Report
    FDI1    Create Report
    FDI2    Change Report
    FDI3    Display Report
    FDI4    Create Form
    FDI5    Change Form
    FDI6    Display Form
    FDIB    Background Processing
    FDIC    Maintain Currency Translation Type
    FDIK    Maintain Key Figures
    FDIM    Report Monitor
    FDIO    Transport Reports
    FDIP    Transport Forms
    FDIQ    Import Reports from Client 000
    FDIR    Import Forms from Client 000
    FDIT    Translation Tool - Drilldown Report
    FDIV    Maintain Global Variable
    FDIX    Reorganize Drilldown Reports
    FDIY    Reorganize Report Data
    FDIZ    Reorganize Forms
    FDK43   Credit Management - Master Data List
    FDMN   
    FDOO    Borrower's notes order overview
    FDTA    TemSe/REGUT Data Administration
    FDTT    Treasury Data Medium Administration
    FEBA    Postprocess Electronic Bank Statmt
    FEBC    Generate Multicash format
    FEBMSG  Display Internet Messages
    FEBOAS  Request Account Statement via OFX
    FEBOFX  OFX Functions
    FEBP    Post Electronic Bank Statement
    FEBSTS  Search String Search Simulation
    FESR    Importing of POR File (Switzerland)
    FEUB    Adjust VIBEPP after EURO conversion
    FEUI    Real Estate Implementation Guide
    FF$3    Send planning data to central system
    FF$4    Retrieve planning data
    FF$5    Retrieve transmission results
    FF$6    Check settings
    FF$7    Check all external systems
    FF$A    Maintain TR-CM subsystems
    FF$B    Convert Planning Group
    FF$C    Convert planning level
    FF$D    Convert business areas
    FF$L    Display transmission information
    FF$S    Display transmission information
    FF$X    Configure the central TR-CM system
    FF-1    Outstanding Checks
    FF-2    Outstanding Bills of Exchange
    FF-3    Cash Management Summary Records
    FF-4    CMF Data In Accounting Documents
    FF-5    CMF Records fr.Materials Management
    FF-6    CMF Records from Sales
    FF-7    Forecast Item Journal
    FF-8    Payment Advice Journal
    FF-9    Journal
    FF.1    Standard G/L Account Interest Scale
    FF.3    G/L Account Cashed Checks
    FF.4    Vendor Cashed Checks
    FF.5    Import Electronic Bank Statement
    FF.6    Display Electronic Bank Statement
    FF.7    Payment Advice Comparison
    FF.8    Print Payment Orders
    FF.9    Post Payment Orders
    FF.D    Generate payt req. from advices
    FF/1    Compare Bank Terms
    FF/2    Compare value date
    FF/3    Archive advices from bank statements
    FF/4    Import electronic check deposit list
    FF/5    Post electronic check deposit list
    FF/6    Deposit/loan mgmt analysis/posting
    FF/7    Deposit/loan management int accruals
    FF/8    Import Bank Statement into Cash Mgmt
    FF/9    Compare Advices with Bank Statement
    FF63    Create Planning Memo Record
    FF65    List of Cash Management Memo Records
    FF67    Manual Bank Statement
    FF68    Manual Check Deposit Transaction
    FF6A    Edit Cash Mgmt Pos Payment Advices
    FF6B    Edit liquidity forecast planned item
    FF70    Cash Mgmt Posit./Liquidity Forecast
    FF71    Cash Position
    FF72    Liquidity forecast
    FF73    Cash Concentration
    FF74    Use Program to Access Cash Concntn
    FF7A    Cash Position
    FF7B    Liquidity forecast
    FF:1    Maintain exchange rates
    FFB4    Import electronic check deposit list
    FFB5    Post electronic check deposit list
    FFL_OLD Display Transmission Information
    FFS_OLD Display Transmission Information
    FFTL    Telephone list
    FFW1    Wire Authorization
    FFWR    Post Payment Requests from Advice
    FFWR_REQUESTS   Create Payment Requests from Advice
    FF_1    Standard G/L Account Interest Scale
    FF_3    G/L Account Cashed Checks
    FF_4    Vendor Cashed Checks
    FF_5    Import Electronic Bank Statement
    FF_6    Display Electronic Bank Statement
    Regards,
    Padmam.

  • Posting Allocated Payments

    Hi,
    I've set up an Invoice and Payment , for a customer allocated payment. I am then going to use this data in BAPI's to do this programmaticly. I use transaction F.13 to do the actual clearing, it seems to work finr in the test run - although it does not tell me what has been cleared. WhenI get rid of the test run , I get a message saying "This program run is a production run" and then I try and execute it, and it does nothing. I've checked the documents to see if they are cleared and they are not.
    Any ideas anyone?
    Thanks - Sims

    Hi,
    1) check the protocol/log of report SAPF124
    2) check the customizing TA:OB74
    3) try to clear with TA: FB05
    regards Andreas

  • Automatic allocation of incoming customer payments

    Hi
    I would like to know the configuration behind automatic allocation of incoming cash payments ,
    Regards

    Hi Bhavana
    If I understand your requirement right, there is no special customizing required for this.
    When booking your incoming payments in F-28, enter all details, but in "Addional selections", select Document number and in the next screen, enter all the relevant invoices for which the payment is received and proceed posting the document.
    Can you please test this and confirm whether this is what you are looking for.
    Regards

  • Posting pre-payment (Recurring) AP Invoice and subsequence cost allocation

    Hi all
    We're trying to find the best solution to processing Rent/Rates AP invoices, where we receive an invoice at the beginning of the year for 12 months worth of costs.  We're OK with paying the invoice either by instalments or immediately, however once posted how can we get the costs to the correct forward period.
    We are not using the Accruals Engine, Real Estate Module nor Service Purchase Orders.
    We would like to create a purchase order, goods receipt and process the invoice via MIRA, however we're facing some challenges!
    Would anyone have a solution to:
    1. Would it be advantagous to have the goods receipt as valuated or not?
    2. How can we ensure that the costs are being allocated into the correct forward period?
    Any help would be much appreciated.
    Kind regards
    Elaine

    Hi Elaine
    You can set up recurring entry invoices that will execute on a certain day of the month and be paid as per the pay terms
    Hope this helps
    Deepa

  • Payment advices in F110 to be sent by email (PDF format) - step by step

    Hi SDN,
    We have a requirement to automatically send payment advices in F110 via email. The requirement is to send the file in PDF format. I've done a lot of browsing through in the forums, as well as check SAP notes, but none has really detailed a step by step process on how to go about it.
    I've also checked SAP NOTE 836169, but it is also not that detailed.
    Assuming that SCOT has been already set up by BASIS, I've done the following steps to test if the auto-email works, and here are the steps I did.
    1. Vendor Master Data -Define u2018Std communication methodu2019 as SMTP (Internet mail) and maintain an email address in the vendor master data.
    3. T-Code BERP u2013 Code to find the relevant BTE. Use the Selection Attribute to browse for your business area. In my case, it is AP-Payment Transactions hence FI-AP-AP-PT.
    00002040 is the relevant process. This is a Function called SAMPLE_PROCESS_00002040. In this case, the FM only checks for an email address in the Vendor Master. If more logic is required a Z-version would need to be created.
    4. Use t-code FIBF to create the enhancement.
    a) Create a product.
    A product groups together customer enhancements to BTEu2019s developed in the customer's namespace. All customer enhancements assigned to a certain customer product can be released with the Activate Customer Product indicator. The OPEN_FI function module for a certain customer enhancement cannot find the corresponding customer function modules, until this has been done.
    Create the product name (for example ZMAIL) and make it active.
    FIBF->Settings->Products->u2026of a Customer
    b) Assign the BTE to the FM:
    Settings->Process Modules->u2026of a customer
    Assign the 00002040 process to the FM and Product.
    5. Run the autopayment program F110.
    After I run the following steps, no email is being generated by the system. Is there anything that I still need to do? Or could anybody please kindly provide a step-by-step process? I'm a functional person, so I won't be able to do ABAP programming for this. Thanks and regards to all

    Hello,
    Check SCOT and SOST transactions.
    At a previous client using 4.6C we did a program and allocated it in F110.  The program reviewed the payment tables and sent the payment advice (basic list) to the employee vendors. 
    Also check http://wiki.sdn.sap.com/wiki/display/sandbox/SendMailwithPDFAttachment
    Regards
    Waza

  • Calculation of customer payment performance   by profit center

    I want to calculate customer payment performance by profit center  it is a report.
    Caluation clue.
    <b>Performance is a measure of when the payment was made versus the due date calculated by the payment terms</b>.
    i want the logic to be included in the following code.
    REPORT                                               
    TABLE DECLARATIONS
    TABLES: BFOD_A,         "FI subsequent BA/PC adjustment: Customer items
            BSID,           "Open Items
            BSAD,           "Cleared Items
            BKPF,           "Docuemnt Header
            KNA1,           "Customer Master
            CEPCT,          "Texts for Profit Center Master Data
            CEPC,           "Profit center master data table
            SKB1,           "G/L account master
            VBFA,           "Sales Document Flow
            VBAK.           "Sales Document: Header Data
    CONTROLS: TABAGING TYPE TABLEVIEW USING SCREEN 9000.
    FIELD-SYMBOLS: <COLUMN>.
    Internal tables followed by types
    TYPES: BEGIN OF T_TOTAL,
             WAERS  LIKE COEP-TWAER,
             DAYS01 LIKE COEP-WTGBTR,
             DAYS02 LIKE COEP-WTGBTR,
             DAYS03 LIKE COEP-WTGBTR,
             DAYS04 LIKE COEP-WTGBTR,
             DAYS05 LIKE COEP-WTGBTR,
             TOTAL  LIKE COEP-WTGBTR,
           END OF T_TOTAL.
    DATA: V_DISVARIANT       TYPE DISVARIANT,
          REF_CUSTOM         TYPE REF TO CL_GUI_CUSTOM_CONTAINER,
          REF_ALV_ZRPT       TYPE REF TO CL_GUI_ALV_GRID.
    DATA: V_SAVE(1)    TYPE C,
          V_DEFAULT(1) TYPE C,
          V_VARIANT    TYPE DISVARIANT,
          V_SORT       TYPE LVC_S_SORT,
          V_LAYOUT     TYPE LVC_S_LAYO,
          V_SAVE_TABIX LIKE SY-TABIX,
          V_SAVE_TIME  LIKE SY-UZEIT,
          V_ALV_FIELDCAT TYPE LVC_S_FCAT,
          V_SAVE_INDEX LIKE SY-TABIX,
          V_ROW        TYPE LVC_S_ROW,
          V_ROWS       TYPE LINE OF LVC_T_ROW.
    DATA: BEGIN OF V_HDR,
            CURKY(9) TYPE C,
            CURR(20) TYPE C,
            COL1(20) TYPE C,
            COL2(20) TYPE C,
            COL3(20) TYPE C,
            COL4(20) TYPE C,
            TOTAL(20) TYPE C,
          END OF V_HDR.
    DATA: BEGIN OF V_FIELD,
            NAME(15) TYPE C,
            VALUE(17) TYPE C,
          END OF V_FIELD.
    DATA: BEGIN OF I_BFOD_A OCCURS 0,
            PRCTR LIKE BFOD_A-PRCTR,
            KUNNR LIKE BFOD_A-KUNNR,
            BUKRS LIKE BFOD_A-BUKRS,
            GJAHR LIKE BFOD_A-GJAHR,
            BELNR LIKE BFOD_A-BELNR,
            BUZEI LIKE BFOD_A-BUZEI,
            AUGDT LIKE BFOD_A-AUGDT,
            HKONT LIKE BFOD_A-HKONT,
            BUDAT LIKE BFOD_A-BUDAT,
            SHKZG LIKE BFOD_A-SHKZG,
            DMBTR LIKE BFOD_A-DMBTR,
            DMBE2 LIKE BFOD_A-DMBE2,
          END OF I_BFOD_A.
    DATA: I_SET_VALUES   LIKE SETVALUES OCCURS 0 WITH HEADER LINE,
          I_SORT         TYPE LVC_T_SORT,
          I_ALV_FIELDCAT TYPE LVC_T_FCAT,
          I_PRCTR_COCD   TYPE FCINPCA001 OCCURS 0 WITH HEADER LINE,
          I_BFODA_KUNNR  LIKE I_BFOD_A OCCURS 0 WITH HEADER LINE,
    Begin of changes for DEVK909110
         I_REPORT       TYPE ZFR0ARPR_S1 OCCURS 0 WITH HEADER LINE,
          I_REPORT       TYPE ZPSS_ARBYPC OCCURS 0 WITH HEADER LINE,
    End of changes for DEVK909110
          I_FAEDE        LIKE FAEDE,
          I_TOTAL        TYPE T_TOTAL OCCURS 0 WITH HEADER LINE.
    DATA: BEGIN OF I_BKPF OCCURS 0,
            BUKRS LIKE BKPF-BUKRS,
            BELNR LIKE BKPF-BELNR,
            GJAHR LIKE BKPF-GJAHR,
            BKTXT LIKE BKPF-BKTXT,
            XBLNR LIKE BKPF-XBLNR,
            HWAER LIKE BKPF-HWAER,
            HWAE2 LIKE BKPF-HWAE2,
          END OF I_BKPF.
    *... combine BSAD and BSID
    DATA: BEGIN OF I_BSYD OCCURS 0,
            KUNNR LIKE BSID-KUNNR,
            BUKRS LIKE BSID-BUKRS,
            GJAHR LIKE BSID-GJAHR,
            BELNR LIKE BSID-BELNR,
            BUZEI LIKE BSID-BUZEI,
            AUGDT LIKE BSID-AUGDT,
            BLDAT LIKE BSID-BLDAT,
            BUDAT LIKE BSID-BUDAT,
            HKONT LIKE BSID-HKONT,
            WAERS LIKE BSID-WAERS,
            ZFBDT LIKE BSID-ZFBDT,
            ZBD1T LIKE BSID-ZBD1T,
            ZBD2T LIKE BSID-ZBD2T,
            ZBD3T LIKE BSID-ZBD3T,
            XBLNR LIKE BSID-XBLNR,
            REBZG LIKE BSID-REBZG,
            SHKZG LIKE BSID-SHKZG,
            DMBTR LIKE BSID-DMBTR,
            WRBTR LIKE BSID-WRBTR,
          END OF I_BSYD.
    DATA: BEGIN OF I_CEPC OCCURS 0,
             PRCTR LIKE CEPC-PRCTR,
             KHINR LIKE CEPC-KHINR,
          END OF I_CEPC.
    DATA: BEGIN OF I_CEPCT OCCURS 0,
             PRCTR LIKE CEPCT-PRCTR,
             MCTXT LIKE CEPCT-MCTXT,
          END OF I_CEPCT.
    DATA: BEGIN OF I_PRCTR OCCURS 0,
            PRCTR LIKE BFOD_A-PRCTR,
          END OF I_PRCTR.
    DATA: BEGIN OF I_KNA1 OCCURS 0,
             KUNNR LIKE KNA1-KUNNR,
             NAME1 LIKE KNA1-NAME1,
          END OF I_KNA1.
    Working Variables Declarations
    *... accumulators
    DATA: V_BFOD_TXNAMT LIKE BSID-WRBTR,    "transaction currency amt
          V_FRCURR      LIKE TCURR-FCURR,   "local currency
          V_TOCURR      LIKE TCURR-FCURR,   "local currency
          V_LCURR       LIKE T001-WAERS,    "local currency
          V_CUSTTOTUSD  LIKE BFOD_A-DMBE2,  "customer total grp curr
          V_TOTAL       LIKE BPPE-WTP03,    "days total grp curr
          V_CURRENT     LIKE BPPE-WTP03,    "days current grp curr
          V_TOTAL_USD   LIKE BPPE-WTP03,    "days total grp curr
          V_TOTAL_ROW   LIKE BPPE-WTP03.    "total of local curr/row
    DATA: V_PRCTR          LIKE CEPC-PRCTR,   "profit center
          V_SUBRC          LIKE SY-SUBRC,
          V_FLAG           TYPE I,
          V_DPAST          TYPE I,     "past due days working
          V_GRAND          TYPE C,
          V_DIFF_COLOR     TYPE C,
          V_MSG(50)        TYPE C,
          V_SAVE_PCFN(128) TYPE C,
          V_EXTENSION(4)   TYPE C,
          V_PREV_PRCTR     LIKE CEPC-PRCTR,
          V_POS            LIKE SY-FDPOS,
          V_SAVE_BUKRS     LIKE BFOD_A-BUKRS,
          V_SAVE_KHINR     LIKE CEPC-KHINR,
          V_PERC           TYPE P DECIMALS 10,
          V_ZBD1T          LIKE BSID-ZBD1T,
          V_ZFBDT          LIKE BSID-ZFBDT,
          V_GROUP_CLASS    LIKE RGSBS-CLASS,
          V_GROUP_NAME     LIKE RGSBS-SETNR,
          V_GROUP_TITLE    LIKE RGSBS-TITLE,
          V_SETID          LIKE SETHIER-SETID,
          V_FILETYPE       LIKE RLGRAP-FILETYPE VALUE 'DAT',
          V_CNT            LIKE SY-TABIX,
          V_PREV_BELNR     LIKE BSID-BELNR,
          V_REPORT1        LIKE I_REPORT,
          V_REPORT         LIKE I_REPORT,
          V_TABIX          LIKE SY-TABIX.
    Constants
    CONSTANTS:
          C_0H(2)     TYPE C VALUE '0H',
          C_0106(4)   TYPE C VALUE '0106',
          C_SPACE(11) TYPE C VALUE '          ',
          C_USD(3)    TYPE C VALUE 'USD',
          C_KBRC      LIKE CEPC-KOKRS VALUE 'KBRC',
          C_TXT(4)    TYPE C VALUE '.txt',
          C_XLS(4)    TYPE C VALUE '.xls',
          C_RTF(4)    TYPE C VALUE '.rtf',
          C_PERIOD(1) TYPE C VALUE '.',
          C_TODATE    LIKE CEPC-DATBI VALUE '99991231'.
    RANGES: R_KUNNR FOR KNA1-KUNNR.         "Customer
    Selection Screen Parameters and Select-options
    SELECTION-SCREEN SKIP 1.
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    PARAMETERS:     P_KHINR LIKE CEPC-KHINR.
    SELECT-OPTIONS: S_PRCTR FOR CEPC-PRCTR,
                    S_KUNNR FOR KNA1-KUNNR,
                    S_BUKRS FOR BKPF-BUKRS,
                    S_HKONT FOR SKB1-SAKNR.
    PARAMETERS:     P_BUDAT LIKE BFOD_A-BUDAT OBLIGATORY.
    SELECTION-SCREEN ULINE.
    SELECT-OPTIONS: S_BELNR FOR BFOD_A-BELNR,
                    S_AUART FOR VBAK-AUART,
                    S_VTWEG FOR VBAK-VTWEG,
                    S_VBTYP FOR VBFA-VBTYP_V.
    SELECTION-SCREEN ULINE.
    PARAMETERS: P_AGEDY TYPE ZZAGEMULT DEFAULT '30' OBLIGATORY.
    SELECTION-SCREEN END OF BLOCK B1.
    SELECTION-SCREEN SKIP.
    SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME.
    PARAMETERS: P_DSVAR LIKE DISVARIANT-VARIANT.
    SELECTION-SCREEN END OF BLOCK B2.
    class lcl_event_receiver: local class to handle event DOUBLE_CLICK
    Definition:
    CLASS LCL_EVENT_RECEIVER DEFINITION.
      PUBLIC SECTION.
        METHODS:
        MTH_PRINT_TOP_OF_PAGE
            FOR EVENT PRINT_TOP_OF_PAGE OF CL_GUI_ALV_GRID.
        METHODS:
        MTH_PRINT_TOP_OF_LIST
            FOR EVENT PRINT_TOP_OF_LIST OF CL_GUI_ALV_GRID.
      PRIVATE SECTION.
    ENDCLASS.                    "lcl_event_receiver DEFINITION
    class lcl_event_receiver: local class to handle event DOUBLE_CLICK
    Implementation:
    CLASS LCL_EVENT_RECEIVER IMPLEMENTATION.
      METHOD MTH_PRINT_TOP_OF_PAGE.
        CALL FUNCTION 'Z_CA_STD_HEADER'
          EXPORTING
            HEADING    = SY-TITLE
            P_REPID    = SY-CPROG
            LINE_WIDTH = SY-LINSZ.
      ENDMETHOD.                    "MTH_PRINT_TOP_OF_PAGE
      METHOD MTH_PRINT_TOP_OF_LIST.
        CALL FUNCTION 'Z_CA_STD_HEADER'
          EXPORTING
            HEADING    = SY-TITLE
            P_REPID    = SY-CPROG
            LINE_WIDTH = SY-LINSZ.
        CALL FUNCTION 'Z_CA_PRINT_SELECTION_OPTIONS'
          EXPORTING
            P_PGMN  = SY-CPROG
            P_SKIP  = 'X'
            P_NOTOP = 'X'.
        NEW-PAGE.
      ENDMETHOD.                    "MTH_PRINT_TOP_OF_LIST
    ENDCLASS.                    "LCL_EVENT_RECEIVER IMPLEMENTATION
    DATA: REF_EVENT_RECEIVER TYPE REF TO LCL_EVENT_RECEIVER.
    Selection Screen Prompt values
      At Selection Screen
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_DSVAR.
      DATA: LS_DISPLAY_VARIANT TYPE DISVARIANT.
    Get the display variant
      V_DISVARIANT-REPORT  = SY-CPROG.
      V_DISVARIANT-VARIANT = P_DSVAR.
      CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
        EXPORTING
          IS_VARIANT = V_DISVARIANT
          I_SAVE     = 'A'
        IMPORTING
          ES_VARIANT = LS_DISPLAY_VARIANT
        EXCEPTIONS
          OTHERS     = 3.
    Load results to parameter
      IF SY-SUBRC = 0 AND NOT LS_DISPLAY_VARIANT IS INITIAL.
        P_DSVAR = LS_DISPLAY_VARIANT-VARIANT.
      ENDIF.
    *...performed when looking for values in fields
      performs the drop down selection list
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_KHINR.     "Profit center grp
      PERFORM F_GET_S_KHINR.
    Selection Screen validations
    AT SELECTION-SCREEN.
      IF P_KHINR IS INITIAL.
        IF S_PRCTR[] IS INITIAL.
          IF S_BUKRS[] IS INITIAL.
            MESSAGE E000 WITH TEXT-300 TEXT-302.
          ENDIF.
        ENDIF.
      ELSE.
        IF S_PRCTR[] IS INITIAL.
          PERFORM F_VALIDATE_KHINR.
        ELSE.
    *.. Error msg: Please enter either a Profit Center Group or a
                 profit center, but not both
          MESSAGE E000 WITH TEXT-300 TEXT-301.
          EXIT.
        ENDIF.
      ENDIF.
      IF NOT S_AUART[] IS INITIAL.
        MESSAGE E000 WITH TEXT-303.
      ENDIF.
      IF NOT S_VTWEG[] IS INITIAL.
        MESSAGE E000 WITH TEXT-304.
      ENDIF.
       Event AT LINE-SELECTION
    AT LINE-SELECTION.
      CHECK SY-LSIND LE 1.
      CHECK NOT I_REPORT-BELNR IS INITIAL.
      SET PARAMETER ID 'BLN'  FIELD I_REPORT-BELNR.
      SET PARAMETER ID 'BUK'  FIELD I_REPORT-BUKRS.
      SET PARAMETER ID 'GJR'  FIELD I_REPORT-GJAHR.
      CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.
      CLEAR: I_REPORT-BELNR, I_REPORT-BUKRS, I_REPORT-GJAHR.
    INITIALIZATION
    INITIALIZATION.
    START OF MAIN PROCESSING
    START-OF-SELECTION.
    Check aging days multiplier
      IF P_AGEDY LE 0.
        MESSAGE S000 WITH 'Aging Days Multiplier must be greater than zero'.
        EXIT.
      ENDIF.
    Populate the s_prctr from a profit center group
      IF NOT I_SET_VALUES[] IS INITIAL.
        PERFORM F_POPULATE_PRCTR_FROM_PRCTRGRP.
      ENDIF.
    Build and validate prctr against cepc table
      IF NOT S_PRCTR[] IS INITIAL.
        PERFORM F_BUILD_I_CEPC_TABLE.      "FILLS THE VALID PROFIT CTR TABLE
      ENDIF.
    Get base selections
      PERFORM F_SELECT_DATA.               "BUILD REF INTERNAL TABLES
    Get additional fields and build reporting structure
      PERFORM F_BUILD_I_REPORT.            "BUILDS INTERNAL REPORTING TABLE
    Generate ALV report
      PERFORM F_WRITE_REPORT.              "WRITES i_report AND RUNS CALCS
    END-OF-SELECTION.
      FREE: I_BFOD_A, I_KNA1, I_CEPC, I_CEPCT, I_REPORT.
          Form  F_DIS_MSG
    FORM F_DIS_MSG USING VALUE(P_PERCENTAGE) VALUE(P_TEXT).
      CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
        EXPORTING
          PERCENTAGE = P_PERCENTAGE
          TEXT       = P_TEXT
        EXCEPTIONS
          OTHERS     = 1.
    ENDFORM.                               " F_DIS_MSG
          Form  F_GET_S_KHINR
          Get prompt values for Profit Center Group
    FORM F_GET_S_KHINR.
      PERFORM F_DIS_MSG USING 100 'Get prompt values for Profit Ctr Group.'.
      COMMIT WORK.
      CALL FUNCTION 'K_GROUP_SELECT'
        EXPORTING
          BUTTONS            = 'X'
          CLASS              = '0H  '
          CRUSER             = '*'
          FIELD_NAME         = 'RPRCTR'
          SEARCHFLD          = 'KBRC'
          SEARCHFLD_INPUT    = ' '
          SEARCHFLD_REQUIRED = 'X'
          SET                = '*'
          START_COLUMN       = 10
          START_ROW          = 5
          TABLE              = 'GLPCT'
          TYPELIST           = 'BS'
          UPDUSER            = '*'
        IMPORTING
          CLASS_NAME         = V_GROUP_CLASS
          SET_NAME           = V_GROUP_NAME
          SET_TITLE          = V_GROUP_TITLE
        EXCEPTIONS
          NO_SET_PICKED      = 1
          OTHERS             = 2.
      IF SY-SUBRC = 0.
        P_KHINR = V_GROUP_NAME.
      ENDIF.
    ENDFORM.                               " F_GET_S_KHINR
          FORM F_VALIDATE_KHINR                                         *
    FORM F_VALIDATE_KHINR.
      PERFORM F_DIS_MSG USING 100 'Validate Profit Center group.'.
      COMMIT WORK.
      CLEAR I_SET_VALUES.
      REFRESH I_SET_VALUES.
      CONCATENATE C_0106  C_KBRC P_KHINR INTO V_SETID.
      CONDENSE V_SETID.
      CALL FUNCTION 'G_SET_TREE_IMPORT'
        EXPORTING
          CLIENT                    = SY-MANDT
          FIELDNAME                 = 'RPRCTR'
          LANGU                     = SY-LANGU
          SETID                     = V_SETID
          TABNAME                   = 'GLPCT'
          NO_TABLE_BUFFERING        = 'X'
        TABLES
          SET_VALUES                = I_SET_VALUES
        EXCEPTIONS
          SET_NOT_FOUND             = 1
          ILLEGAL_FIELD_REPLACEMENT = 2
          ILLEGAL_TABLE_REPLACEMENT = 3
          OTHERS                    = 4.
      IF SY-SUBRC NE 0.
    E: Unable to find Profit Center Group & - please modify selection
        MESSAGE E000 WITH TEXT-002 P_KHINR.
      ENDIF.
      IF I_SET_VALUES[] IS INITIAL.
        MESSAGE E000 WITH P_KHINR TEXT-039.
      ENDIF.
    ENDFORM.                               " F_VALIDATE_KHINR
          Form  F_SELECT_DATA
    FORM F_SELECT_DATA.
      PERFORM F_DIS_MSG USING 100 'Retrieve info from SAP tables.'.
      COMMIT WORK.
    Build the BFOD_A internal table based on user selections
    f i_cepc table is initial, it means derive all prctr under a co cd
      IF S_PRCTR[] IS INITIAL.
        PERFORM F_RETRIEVE_BFODA_BY_COMPANY.
      ELSE.
        PERFORM F_RETRIEVE_BFODA_BY_PRCTR.
      ENDIF.
      IF I_BFOD_A[] IS INITIAL.
    *... No records fit selection criteria.
        MESSAGE E000 WITH TEXT-H20.
      ENDIF.
    Get the text for profit center
      SELECT SPRAS PRCTR DATBI KOKRS MCTXT FROM CEPCT
                 INTO CORRESPONDING FIELDS OF TABLE I_CEPCT
                  FOR ALL ENTRIES IN I_CEPC
                WHERE SPRAS = SY-LANGU
                  AND PRCTR = I_CEPC-PRCTR.
    Build an internal table of unique bfod keys for bsid and bsad
      I_BFODA_KUNNR[] = I_BFOD_A[].
      SORT I_BFODA_KUNNR BY KUNNR BUKRS GJAHR BELNR BUZEI.
      DELETE ADJACENT DUPLICATES FROM I_BFODA_KUNNR COMPARING
         KUNNR BUKRS GJAHR BELNR BUZEI.
    Build BSID Internal table
      SELECT MANDT BUKRS KUNNR UMSKS UMSKZ AUGDT AUGBL ZUONR GJAHR BELNR
             BUZEI BUDAT HKONT BLDAT WAERS REBZG XBLNR SHKZG DMBTR
             WRBTR ZFBDT ZBD1T ZBD2T ZBD3T
                FROM BSID INTO CORRESPONDING FIELDS OF TABLE I_BSYD
                 FOR ALL ENTRIES IN I_BFODA_KUNNR
               WHERE KUNNR EQ I_BFODA_KUNNR-KUNNR
                 AND BUKRS EQ I_BFODA_KUNNR-BUKRS
                 AND GJAHR EQ I_BFODA_KUNNR-GJAHR
                 AND BELNR EQ I_BFODA_KUNNR-BELNR
                 AND BUZEI EQ I_BFODA_KUNNR-BUZEI.
    Build BSAD internal table
      SELECT MANDT BUKRS KUNNR UMSKS UMSKZ AUGDT AUGBL ZUONR GJAHR BELNR
          BUZEI HKONT BUDAT BLDAT WAERS REBZG XBLNR SHKZG DMBTR WRBTR ZFBDT
          ZBD1T ZBD2T ZBD3T
             FROM BSAD APPENDING CORRESPONDING FIELDS OF TABLE I_BSYD
              FOR ALL ENTRIES IN I_BFODA_KUNNR
            WHERE KUNNR EQ I_BFODA_KUNNR-KUNNR
              AND BUKRS EQ I_BFODA_KUNNR-BUKRS
              AND AUGDT GT P_BUDAT
              AND GJAHR EQ I_BFODA_KUNNR-GJAHR
              AND BELNR EQ I_BFODA_KUNNR-BELNR
              AND BUZEI EQ I_BFODA_KUNNR-BUZEI.
      IF NOT I_BSYD[] IS INITIAL.
    Remove records based on selection criteria
        DELETE I_BSYD WHERE
           NOT BUDAT LE P_BUDAT OR
           NOT HKONT IN S_HKONT.
      ENDIF.
    Acquire document headers
      SELECT BUKRS BELNR GJAHR BKTXT XBLNR HWAER HWAE2 FROM BKPF
                    INTO TABLE I_BKPF
                    FOR ALL ENTRIES IN I_BSYD
                    WHERE BUKRS EQ I_BSYD-BUKRS
                      AND BELNR EQ I_BSYD-BELNR
                      AND GJAHR EQ I_BSYD-GJAHR.
    Sort document lines
      SORT I_BSYD BY KUNNR BUKRS GJAHR BELNR BUZEI ASCENDING.
      SORT I_BKPF BY  BUKRS BELNR GJAHR ASCENDING.
    Create table of unique customers
      SORT I_BFODA_KUNNR BY KUNNR.
      DELETE ADJACENT DUPLICATES FROM I_BFODA_KUNNR COMPARING KUNNR.
    Build customer table
      SELECT KUNNR NAME1 FROM KNA1
                INTO TABLE I_KNA1
                 FOR ALL ENTRIES IN I_BFODA_KUNNR
               WHERE KUNNR EQ I_BFODA_KUNNR-KUNNR.
    Free memory space
      FREE I_BFODA_KUNNR.
    ENDFORM.                               " F_SELECT_DATA
          Form  F_BUILD_I_CEPC_TABLE
          build the i_cepc internal table that would populate the
          valid profit centers to processed.
    FORM F_BUILD_I_CEPC_TABLE.
      PERFORM F_DIS_MSG USING 100 'Build the Profit Center Ref Table.'.
      COMMIT WORK.
    Acquire CEPC table
      IF I_PRCTR[] IS INITIAL.
        SORT S_PRCTR.
        SELECT PRCTR KHINR
          FROM CEPC
          INTO TABLE I_CEPC
          WHERE PRCTR IN S_PRCTR.
    Sort table
        SORT I_CEPC BY PRCTR KHINR.
    Remove duplicate values
        DELETE ADJACENT DUPLICATES FROM I_CEPC COMPARING PRCTR.
        I_PRCTR[] = I_CEPC[].
    Sort table
        SORT I_PRCTR BY PRCTR.
      ELSE.
    Sort table
        SORT I_PRCTR BY PRCTR.
    Acquire CEPC table
        SELECT PRCTR KHINR
          FROM CEPC
          INTO TABLE I_CEPC
          FOR ALL ENTRIES IN I_PRCTR
          WHERE PRCTR = I_PRCTR-PRCTR.
    SOrt table
        SORT I_CEPC BY PRCTR KHINR.
      ENDIF.
      IF I_CEPC[] IS INITIAL.
        MESSAGE E000 WITH TEXT-006.
      ENDIF.
    ENDFORM.                               " F_BUILD_i_CEPC_TABLE
          Form  F_BUILD_I_REPORT
          Build the A/R report internal table from bfod_a, bsid and bsad
          It is necessary to go to BSAD/BSID to get the document currency
          not present in bfod_a.
    FORM F_BUILD_I_REPORT.
      PERFORM F_DIS_MSG USING 100 'Build the report information.'.
      COMMIT WORK.
    Sort all internal tables, this is essential for later processing
      SORT I_BFOD_A BY KUNNR BUKRS GJAHR BELNR BUZEI .
      SORT I_BSYD BY KUNNR BUKRS GJAHR BELNR BUZEI.
      SORT I_CEPC BY PRCTR KHINR.
      LOOP AT I_BFOD_A.
    New customer
        AT NEW KUNNR.
          READ TABLE I_KNA1 WITH KEY KUNNR = I_BFOD_A-KUNNR BINARY SEARCH.
          IF SY-SUBRC EQ 0.
            MOVE I_KNA1-NAME1 TO I_REPORT-NAME1.
          ENDIF.
        ENDAT.
    Acquire header fields
        READ TABLE I_BKPF WITH KEY BUKRS = I_BFOD_A-BUKRS
                                   BELNR = I_BFOD_A-BELNR
                                   GJAHR = I_BFOD_A-GJAHR BINARY SEARCH.
        IF SY-SUBRC NE 0.
          CLEAR I_BKPF.
        ENDIF.
    Build base record
        PERFORM F_MOVE_BASE_TO_REPORT.
    Load profit center data
        IF P_KHINR IS INITIAL.
          IF V_PREV_PRCTR = I_BFOD_A-PRCTR.
            I_REPORT-KHINR = I_CEPC-KHINR.
          ELSE.
            READ TABLE I_CEPC WITH KEY PRCTR = I_BFOD_A-PRCTR BINARY SEARCH.
            IF SY-SUBRC = 0.
              I_REPORT-KHINR = I_CEPC-KHINR.
            ELSE.
              CLEAR I_REPORT-KHINR.
            ENDIF.
            V_PREV_PRCTR = I_BFOD_A-PRCTR.
          ENDIF.
        ELSE.
          I_REPORT-KHINR = P_KHINR.
        ENDIF.
    Reverse signs
        IF I_REPORT-SHKZG = 'H'.
          I_REPORT-DMBTR = I_REPORT-DMBTR * -1.
          I_REPORT-DMBE2 = I_REPORT-DMBE2 * -1.
        ENDIF.
    Additional details
        READ TABLE I_BSYD WITH KEY KUNNR = I_BFOD_A-KUNNR
                                   BUKRS = I_BFOD_A-BUKRS
                                   GJAHR = I_BFOD_A-GJAHR
                                   BELNR = I_BFOD_A-BELNR
                                   BUZEI = I_BFOD_A-BUZEI BINARY SEARCH.
        IF SY-SUBRC = 0.
          PERFORM F_FORMAT_I_REPORT_FR_BSYD.
          APPEND I_REPORT.
        ENDIF.
      ENDLOOP.
    ENDFORM.                               " F_BUILD_I_REPORT
          Form  F_FORMAT_I_REPORT_FR_BSYD
    Retrieve all the information needed for reporting from BSID.
    If a document has a referencing invoice (REBZG), the payment terms
       and the baseline date to be used will come from the referencing
       invoice.
    FORM F_FORMAT_I_REPORT_FR_BSYD.
    *=> get the document currency amount from bsid
      I_REPORT-BLDAT = I_BSYD-BLDAT.
      I_REPORT-WAERS = I_BSYD-WAERS.
    PERFORM F_CONVERT_CURRENCY_FR_2_AMTS USING I_REPORT-HWAER I_BSYD-WAERS
                                                I_BSYD-DMBTR   I_BSYD-WRBTR
                                                             I_BFOD_A-DMBTR
                                                     CHANGING V_BFOD_TXNAMT.
      I_REPORT-WRBTR = V_BFOD_TXNAMT.
      IF I_BSYD-SHKZG = 'H'.
        I_REPORT-WRBTR = I_REPORT-WRBTR * -1.
      ENDIF.
      V_ZBD1T = I_BSYD-ZBD1T.
      V_ZFBDT = I_BSYD-ZFBDT.
    *=> determine reference document (referencing invoice)
      CLEAR I_REPORT-SORT.
      CASE I_BSYD-REBZG.
        WHEN ' '.
          I_REPORT-SORT = I_BFOD_A-BELNR.
        WHEN 'V'.
          I_REPORT-SORT = I_BSYD-XBLNR.
        WHEN OTHERS.
          I_REPORT-SORT = I_BSYD-REBZG.
          PERFORM F_GET_DATEPAYTERM_FR_ORIGDOC.
      ENDCASE.
      CLEAR I_FAEDE.
      I_FAEDE-SHKZG = I_BSYD-SHKZG.
      I_FAEDE-KOART = 'D'.
      I_FAEDE-ZFBDT = I_BSYD-ZFBDT.
      I_FAEDE-ZBD1T = I_BSYD-ZBD1T.
      I_FAEDE-ZBD2T = I_BSYD-ZBD2T.
      I_FAEDE-ZBD3T = I_BSYD-ZBD3T.
      I_FAEDE-REBZG = I_BSYD-REBZG.
      I_FAEDE-BLDAT = I_BSYD-BLDAT.
      CALL FUNCTION 'DETERMINE_DUE_DATE'
        EXPORTING
          I_FAEDE                    = I_FAEDE
        IMPORTING
          E_FAEDE                    = I_FAEDE
        EXCEPTIONS
          ACCOUNT_TYPE_NOT_SUPPORTED = 1
          OTHERS                     = 2.
      V_DPAST = P_BUDAT - I_FAEDE-NETDT.
      IF V_DPAST < 0.
        I_REPORT-DPAST = 0.
      ELSE.
        MOVE V_DPAST TO I_REPORT-DPAST.
      ENDIF.
      I_REPORT-ZBD1T = V_ZBD1T.
      I_REPORT-NETDT = I_FAEDE-NETDT.
    Update totals
      PERFORM F_BUILD_TOTALS.
    ENDFORM.                               " F_FORMAT_I_REPORT_FR_BSYD
          Form  F_GET_DATEPAYTERM_FR_ORIGDOC
    FORM F_GET_DATEPAYTERM_FR_ORIGDOC.
    In order to go back to the original document's payment terms and
    baseline date, we neeed to resort bsid/bsad to a different sort
    order b-coz only these 3 fields logically matched the orig doc
      SORT I_BSYD BY KUNNR BUKRS BELNR.
      READ TABLE I_BSYD WITH KEY KUNNR = I_BFOD_A-KUNNR
                                 BUKRS = I_BFOD_A-BUKRS
                                 BELNR = I_REPORT-SORT BINARY SEARCH.
      IF SY-SUBRC = 0.
        V_ZBD1T = I_BSYD-ZBD1T.            "payment term
        V_ZFBDT = I_BSYD-ZFBDT.            "baseline due date
      ENDIF.
      SORT I_BSYD BY KUNNR BUKRS GJAHR BELNR BUZEI.
    ENDFORM.                               " F_GET_DATEPAYTERM_FR_ORIGDOC
          Form  F_WRITE_REPORT
          Write A/R report summarized by profit center.
          Report will be build by profit center and sum all customers
             then will sum past do for profit center and catagorized
             will also sum by project / wbs element.
    FORM F_WRITE_REPORT.
      SORT I_REPORT BY PRCTR KUNNR SORT BLDAT BELNR DPAST DESCENDING.
      CALL SCREEN 9000.
    ENDFORM.                               " F_WRITE_REPORT
          Form  F_POPULATE_PRCTR_FROM_PRCTRGRP
    FORM F_POPULATE_PRCTR_FROM_PRCTRGRP.
      LOOP AT I_SET_VALUES.
        IF I_SET_VALUES-TO = I_SET_VALUES-FROM.
          I_PRCTR-PRCTR = I_SET_VALUES-TO.
          COLLECT I_PRCTR.
          S_PRCTR-SIGN   = 'I'.
          S_PRCTR-OPTION = 'EQ'.
          S_PRCTR-LOW    = I_SET_VALUES-TO.
          COLLECT S_PRCTR.
        ELSE.
          MESSAGE E000 WITH 'System Error, contact programmer'
                  I_SET_VALUES-TO I_SET_VALUES-FROM.
        ENDIF.
      ENDLOOP.
    ENDFORM.                               " F_POPULATE_PRCTR_FROM_PRCTRGRP
          Form  F_CONVERT_CURRENCY_FR_2_AMTS
          This function module will ensure proper handling of decimals
          and conversion of currency. This will give you the historical
          exchange rate used.
          BFOD_A does not have the trans curr amt so we will get it
           using:  ( bsid trans curr amt / bsid loc curr amt ) *
                   bfod_a loc currency amt
    FORM F_CONVERT_CURRENCY_FR_2_AMTS USING V_FRCURR V_TOCURR
                                            V_OFRAMT V_OTOAMT V_NFRAMT
                                     CHANGING V_NTOAMT.
      CALL FUNCTION 'Z_CONVERT_CURRENCY_FROM_2_AMTS'
        EXPORTING
          FROM_CURRENCY   = V_FRCURR
          TO_CURRENCY     = V_TOCURR
          OLD_FROM_AMOUNT = V_OFRAMT
          OLD_TO_AMOUNT   = V_OTOAMT
          NEW_FROM_AMOUNT = V_NFRAMT
        IMPORTING
          NEW_TO_AMOUNT   = V_NTOAMT
        EXCEPTIONS
          OTHERS          = 1.
      IF SY-SUBRC <> 0.
        MESSAGE E000 WITH TEXT-005.
      ENDIF.
    ENDFORM.                               " F_CONVERT_CURRENCY_FR_2_AMTS
          Form  F_RETRIEVE_BFODA_BY_COMPANY
    FORM F_RETRIEVE_BFODA_BY_COMPANY.
    Acquire BFOD_A table
      SELECT PRCTR KUNNR BUKRS GJAHR BELNR BUZEI AUGDT HKONT BUDAT
             SHKZG DMBTR DMBE2 FROM BFOD_A
         INTO TABLE I_BFOD_A
         WHERE BUKRS IN S_BUKRS.
      IF I_BFOD_A[] IS INITIAL.
        EXIT.
      ELSE.
    Remove records based on selection criteria
        DELETE I_BFOD_A WHERE NOT KUNNR IN S_KUNNR OR
                              NOT BUDAT LE P_BUDAT OR
                              NOT HKONT IN S_HKONT OR
                              NOT BELNR IN S_BELNR OR
                            ( NOT AUGDT IS INITIAL AND
                              NOT AUGDT > P_BUDAT ).
      ENDIF.
    Build selection option
      LOOP AT I_BFOD_A.
        I_PRCTR-PRCTR  = I_BFOD_A-PRCTR.
        COLLECT I_PRCTR.
        S_PRCTR-SIGN   = 'I'.
        S_PRCTR-OPTION = 'EQ'.
        S_PRCTR-LOW    = I_BFOD_A-PRCTR.
        COLLECT S_PRCTR.
      ENDLOOP.
      SORT S_PRCTR.
      SORT I_PRCTR BY PRCTR.
      PERFORM F_BUILD_I_CEPC_TABLE.
    ENDFORM.                    " F_RETRIEVE_BFODA_BY_COMPANY
          Form  F_RETRIEVE_BFODA_BY_PRCTR
    FORM F_RETRIEVE_BFODA_BY_PRCTR.
    Acquire BFOD_A table
      SELECT PRCTR KUNNR BUKRS GJAHR BELNR BUZEI AUGDT HKONT BUDAT
             SHKZG DMBTR DMBE2 FROM BFOD_A
         INTO TABLE I_BFOD_A
         FOR ALL ENTRIES IN I_PRCTR
         WHERE PRCTR = I_PRCTR-PRCTR AND
               KUNNR IN S_KUNNR AND
               BUKRS IN S_BUKRS.
      IF I_BFOD_A[] IS INITIAL.
        EXIT.
      ELSE.
    Remove records based on selection criteria
        DELETE I_BFOD_A WHERE NOT KUNNR IN S_KUNNR OR
                              NOT BUKRS IN S_BUKRS OR
                              NOT BUDAT LE P_BUDAT OR
                              NOT HKONT IN S_HKONT OR
                              NOT BELNR IN S_BELNR OR
                            ( NOT AUGDT IS INITIAL AND
                              NOT AUGDT > P_BUDAT ).
      ENDIF.
    ENDFORM.                    " F_RETRIEVE_BFODA_BY_PRCTR
          Form  F_MOVE_BASE_TO_REPORT
    FORM F_MOVE_BASE_TO_REPORT.
      I_REPORT-PRCTR = I_BFOD_A-PRCTR.
      I_REPORT-KUNNR = I_BFOD_A-KUNNR.
      I_REPORT-BELNR = I_BFOD_A-BELNR.
      I_REPORT-BUKRS = I_BFOD_A-BUKRS.
      I_REPORT-HKONT = I_BFOD_A-HKONT.
      I_REPORT-AUGDT = I_BFOD_A-AUGDT.
      I_REPORT-BUDAT = I_BFOD_A-BUDAT.
      I_REPORT-GJAHR = I_BFOD_A-GJAHR.
      I_REPORT-BUZEI = I_BFOD_A-BUZEI.
      I_REPORT-SHKZG = I_BFOD_A-SHKZG.
      I_REPORT-DMBTR = I_BFOD_A-DMBTR.
      I_REPORT-DMBE2 = I_BFOD_A-DMBE2.
      I_REPORT-HWAER = I_BKPF-HWAER.
      I_REPORT-HWAE2 = I_BKPF-HWAE2.
      I_REPORT-BKTXT = I_BKPF-BKTXT.
      I_REPORT-XBLNR = I_BKPF-XBLNR.
    ENDFORM.                    " F_MOVE_BASE_TO_REPORT
         Module  STATUS_9000  OUTPUT
          text
    MODULE STATUS_9000 OUTPUT.
      SET PF-STATUS '9000'.
      SET TITLEBAR '900'.
    Launch standard ALV grid
      PERFORM F_CREATE_ALV_GRID_CONTROL.
      PERFORM F_LOAD_COLUMN_HEADINGS.
    ENDMODULE.                 " STATUS_9000  OUTPUT
          Module  USER_COMMAND_9000  INPUT
          text
    MODULE USER_COMMAND_9000 INPUT.
      CASE SY-UCOMM.
        WHEN 'EXIT' OR 'CANC' OR 'BACK'.
          CALL METHOD REF_CUSTOM->FREE.
          SET SCREEN 0.
          LEAVE SCREEN.
    Begin of changes for Release 2 by HBE7890 - DEVK909110
        WHEN 'PRIN'.
          PERFORM PRINT_AGING_TOTALS.
    End of changes.
      ENDCASE.
    ENDMODULE.                 " USER_COMMAND_9000  INPUT
          Form  F_CREATE_ALV_GRID_CONTROL
          text
    FORM F_CREATE_ALV_GRID_CONTROL.
    Set field catalog for ALV
      PERFORM F_SET_FIELDCAT.
      IF REF_CUSTOM IS INITIAL.
      Create ALV container
        CREATE OBJECT REF_CUSTOM
          EXPORTING
            CONTAINER_NAME = 'ZRPT_CONTAINER'.
      Create ALV grid control
        CREATE OBJECT REF_ALV_ZRPT
          EXPORTING
            I_PARENT          = REF_CUSTOM.
    Adjust look and feel
        PERFORM F_CHANGE_SETTINGS.
    Call the ALV Build
        CALL METHOD REF_ALV_ZRPT->SET_TABLE_FOR_FIRST_DISPLAY
          EXPORTING
            IS_LAYOUT       = V_LAYOUT
            IS_VARIANT      = V_VARIANT
            I_SAVE          = V_SAVE
            I_DEFAULT       = V_DEFAULT
          CHANGING
            IT_SORT         = I_SORT
            IT_OUTTAB       = I_REPORT[]
            IT_FIELDCATALOG = I_ALV_FIELDCAT[].
    Create print top of page
        CREATE OBJECT REF_EVENT_RECEIVER.
        SET HANDLER REF_EVENT_RECEIVER->MTH_PRINT_TOP_OF_PAGE
            FOR REF_ALV_ZRPT.
    Create print top of page
        CREATE OBJECT REF_EVENT_RECEIVER.
        SET HANDLER REF_EVENT_RECEIVER->MTH_PRINT_TOP_OF_LIST
            FOR REF_ALV_ZRPT.
      ENDIF.
    ENDFORM.                    " F_CREATE_ALV_GRID_CONTROL
         Form  F_CHANGE_SETTINGS
          text
    FORM F_CHANGE_SETTINGS .
    Set layout parameters
      V_LAYOUT-GRID_TITLE = 'A/R by Profit Center'.
      V_LAYOUT-SEL_MODE   = 'A'.
      V_LAYOUT-INFO_FNAME = 'LINECOLOR'.
      V_LAYOUT-CWIDTH_OPT = 'X'.
      V_LAYOUT-NO_MERGING = 'X'.
      V_LAYOUT-NUMC_TOTAL = 'X'.
      V_DEFAULT           = 'X'.
      V_SAVE              = 'A'.
    Set display variant
      V_VARIANT-REPORT  = SY-REPID.
      IF P_DSVAR NE ''.
        V_VARIANT-VARIANT = P_DSVAR.
      ENDIF.
    ENDFORM.                    " F_CHANGE_SETTINGS
          Form  F_SET_FIELDCAT
          text
    FORM F_SET_FIELDCAT .
    Set field catalog for ALV
      CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
        EXPORTING
         I_STRUCTURE_NAME       = 'ZFR0ARPR_S1'  "DEVK909110
          I_STRUCTURE_NAME       = 'ZPSS_ARBYPC'                "DEVK909110
        CHANGING
          CT_FIELDCAT            = I_ALV_FIELDCAT
        EXCEPTIONS
          INCONSISTENT_INTERFACE = 1
          PROGRAM_ERROR          = 2
          OTHERS                 = 3.
    Override any attributes
      LOOP AT I_ALV_FIELDCAT INTO V_ALV_FIELDCAT.
        IF V_ALV_FIELDCAT-FIELDNAME EQ 'NAME1'.
          MOVE 'Customer Name' TO: V_ALV_FIELDCAT-REPTEXT,
                                   V_ALV_FIELDCAT-SCRTEXT_L,
                                   V_ALV_FIELDCAT-SCRTEXT_M,
                                   V_ALV_FIELDCAT-SCRTEXT_S.
        ENDIF.
        IF V_ALV_FIELDCAT-FIELDNAME EQ 'SORT'.
          MOVE 'Documentation' TO: V_ALV_FIELDCAT-REPTEXT,
                                   V_ALV_FIELDCAT-SCRTEXT_L,
                                   V_ALV_FIELDCAT-SCRTEXT_M.
          MOVE 'DocRef' TO         V_ALV_FIELDCAT-SCRTEXT_S.
        ENDIF.
        MODIFY I_ALV_FIELDCAT FROM V_ALV_FIELDCAT.
      ENDLOOP.
    ENDFORM.                    " F_SET_FIELDCAT
          Form  F_BUILD_TOTALS
          text
    FORM F_BUILD_TOTALS .
      DATA: V_DAYS TYPE I,
            V_INDEX(2) TYPE N.
      CLEAR I_TOTAL.
    Build total line
      MOVE I_REPORT-HWAER TO I_TOTAL-WAERS.
      MOVE I_REPORT-DMBTR TO I_TOTAL-TOTAL.
      DO 5 TIMES.
        V_DAYS = ( SY-INDEX - 1 ) * P_AGEDY.
        V_INDEX = SY-INDEX.
        IF I_REPORT-DPAST LE V_DAYS.
          CONCATENATE 'I_TOTAL-DAYS' V_INDEX INTO V_FIELD-NAME.
          ASSIGN (V_FIELD-NAME) TO <COLUMN>.
          <COLUMN> = I_REPORT-DMBTR.
          EXIT.
        ELSEIF SY-INDEX EQ 5.
          CONCATENATE 'I_TOTAL-DAYS' V_INDEX INTO V_FIELD-NAME.
          ASSIGN (V_FIELD-NAME) TO <COLUMN>.
          <COLUMN> = I_REPORT-DMBTR.
          EXIT.
        ENDIF.
      ENDDO.
      COLLECT I_TOTAL.
    ENDFORM.                    " F_BUILD_TOTALS
        

    CO-PA has all the information you need...
    Profitability Analysis is that part of CO where operations will access its performance factors and profitability statements contain margins, standard cost variance, sales information, allocations and other related profit or loss data. This module helps analyze profitability of customers, markets and products at various levels of contribution margins. Profitability is measured down to the SD billing document line and is adjusted periodically against standard costs and other costs.
    It has 2 methods of approach :
    Costing based Profitability Analysis - This is primarily designed to let you analyze profits quickly for the purpose of sales management.
    Account based Profitabilty Analysis - This type of Profitability Analysis enables you to reconcile cost and financial accounting at any time using accounts.
    Guess, the second approach is what you are looking for...

  • Can't reverse aggregated payment document

    Hi,
    I can't reverse an aggregated payment document with FP08. I get the error message IUEEDPPLOTA 245 "Payment doc. 1234 is allocated to a contract acct for aggregated posting".  What can I do.
    Best regards,
    Ben

    Hi B.F.,
    please use tx IUEEDPPLOTAALC4 instead of FP08 in this case.
    Regards,
    Alexander

Maybe you are looking for

  • Beeps on startup...E20

    Have an E20 running Windows 7(64-bit) today, on bootup, it made beeping noises: 2 high-pitched, a pause, then 5 lower-pitched. It complained it couldn't find the keyboard, then went into the DHCP bootup (trying to boot fromnetwork), which usually mea

  • Hierachical table webdynpro and VC

    Hello everyone, Is it possible to do a hierachical table in VC and how? What i mean is it possible to create some type of tree structure in a VC table, comething like this: http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/de59f7c2-0

  • How do i put the apps i have on my phone on my play book

    how do i put my apps that are on my phone on my playbook. example i have pageonce app to track my bank accounts and credit cards on my phone but i can't get them on my playbook

  • Are there any loggin capabilities in the xsql servlet??

    Hi, I would like to log things like query results, errors etc on the file system when using the xsql servlet. Is there facility in say XSQLConfig.xml, that will allow me secify a file name that will be subsequently used by the xsql servelet to do thi

  • [SOLVED] ccsm not working after installing Unity from repo.

    Hi, I've been having this problem for a while now, I've been trying to fix it on my own for the last couple of weeks but I wasn't able to help my self searching on internet. As stated on the title, I've installed Unity for arch from the repository fo