Interest on dunning line items

Hi Experts,
while generating the dunning letters, how dunning charges will post automatically as customer line items.
regards,
Sanju M S

Hi,
You have to configure interest calculation procedure and interest indicator. that interest indicator you have to assign in your dunning configure, then it will charge interest for dunning
For acount assignment for interest calculation you need to define the GL account in transaction OBV1 (Interest on arrears) or OBV3 (Interest on Balance).
Regards,
Gaurav

Similar Messages

  • Interest Calculation report line item wise

    Hi,
    We want the details of interest posted line item wise. Do we have any standard report for the same or is there any configuration for that?
    Regards,
    Sharmi

    Hi Sharmi,
    Please check the report RFINTITAP (FINTAP) regards. This is the report to access Vendors Item Interest Calculation
    Regards,
    Gaurav

  • Interest calculation on vendor's due line items

    Hi Experts,
    Kindly help ne to configure Interest calculation on SME types of  vendor's  line items which are due for payment.
    Regards,
    Kuldeep Dubey

    Dear Ashok,
    thnks, pts assigned, but prob not solved.
    <u><b>if possible pl give the entire steps for me to check & may be 1 scenario</b></u>
    the present scenario is that i have posted vendor invoices in apr'06 , maintained vendor master, vendor not paid so far , running f.4b, selecting all relevnt fields, like calclation dt upto 30/4/06, interest posting dt to be 30/4/06, period  -1, print form - printer lp01 etc etc.
    Rgs
    Vinod

  • Dunning Notice per Individual Line Items.

    We have a dunning requirement to print individual dunning notice per line item.  In fact, SAP standard form will give support for all open items of respective customer.  Recently, we have developed a form in such a way that it will consider only one Open line item and it is picking up fine. But the problem it is generating spool request for only first open line item. 
    In fact, our requirement to generate Dunning Forms (spool requests) for all other open items as well. 
    If anybody knows how to generate Dunning Form for Individual Open Items, please let us know.
    Please consider the above requirement on top priority basis, try to answer or atleast give clue how to achieve it.
    Regards.

    Hello Sekhar,
    I am not sure, but, it is not correct to do Dunning at Individual Line Item level (unlike correspondence).
    The reason is that, the Customer Master Data is normally updated once at the end of Dunning Run with the Latest Dunned Date and the appropriate Dunning Level.
    If you go for Dunning at individual Item Level, then it is obviously wrong to keep on updating Customer Master.
    Hope this info enables you to analyse in the right direction
    With Regards
    Vijay Gajavalli

  • VENDOR LINE ITEM INTEREST CALCULATION

    Hi Friends.
    I configured all the settings relating to the line item interest calculation on vendor line items with interest calculation frequency as 1 month.
    When I run the program for the first month by using T.code F.47 by specifying the from date and to date, the system is calculating interest amount correctly but when I run the same program for the second month by specifying the from date and to date, the system is calculating interest for the current month as well as the previous month.
    Please respond.
    Regards.
    Srini

    Hi Venkat,
    The system takes the open items into consideration when calculating the interest. May be the open items that were there in the first month still continue to be existing during the current month also.  Try clearing some of the previous month's open item and run the program.  You should see some difference in the interest calculation.
    Thanks,
    P.k

  • Line items to be excuded in dunning after tha max. level is reached

    Hello everyone,
    We have a requirement in Dunning where the line items that have reached the max. level,  should not be included in the reminders any longer since the invoices are then handled over to an insurance company. Request help on the configuration required for this.
    Thanks

    Hello,
    The dunning block should be set at document level in this case. This way only the document will be blocked.
    If you set it in customer master, the customer will never be dunned.
    There is a path in customizing to create the dunning block.
    REgards,
    REnan Correa

  • SAPF150D-Dunning Notice Print - With Update of Line Items and Master Record

    When I am running this program SAPF150D(Dunning Notice Print - With Update of Line Items and Master Records) with a variant containing run date, runc id, update mode, pimmed & pcount; the job is failing to execute. It is giving message like,
    "The field symbol is no longer assigned because there was an attempt makde previously in a Unicode program to set the field symbol using ASSIGN with offset and/or length specification. Here, the memory addressed by the offset/length specification was not within the allowed area."
    "GETWA_NOT_ASSIGNED_RANGE" "SAPF150D" or "F150DFS0" "SORTFELDER_ERMITTELN"

    Hi,
    Search for routine FORM SORTFELDER_ERMITTELN
    in SAPF150D.
    Put a breakpoint in statement
    ASSIGN (T047F-FELDN) TO <H1>.
    in above routine and debug to the point where error is occuring.
    Most likely there is a mismatch in the length assigned to some field FELDN in table T047F.
    In that case, simply change the T047F-LENGT field accordingly in change mode.
    Cheers,
    Vikram
    Edited by: Vikram Jalali on May 27, 2008 5:56 PM

  • Dunning block on Line item but not in customer master data

    Hi,
    What is the procedure to block a customer for the dunning process?
    I have following example:
    1. A dunning block was entered in an invoice line item (there was no dunning block in the customer master data)
    2. A dunning run was made
    3. A dunning letter was printed for the customer
    Is the block in the master data required for preventing a dunning for a customer?
    Thank you for your feedback.
    Kind regards,
    Linda

    Hi Linda,
    You can block the items of a customer without blocking his account completely by allowing his account for dunning program.
    1. Allow the customer account for dunning
    2.Edit the dunning proposal and block the items individually to the customer and save.
    3.Now you can see the dunning notices for only unblocked items of the customer.
    Thank you,
    Ramesh.

  • HOW TO MIGRATE DUNNING LEVEL & LAST DUNNED DATE FOR ALL OPEN LINE ITEMS

    Hi,
    We need to upload dunning level & last dunned date for all open items (to be done separately i.e. after all open items migrated) which is different for each and every line item so if we use mass upload (fbl5n) we have to do for each and every open line item which is not feasible as open line items in thousands..I tried LSMW also,problem is that for Batch input recording we need to run one complete cycle in sm30 but there is no maintenance dialog for BSEG & BSID table.. Please share your valuable Inputs how we can go ahead..
    Thanks in advance

    Hi Mark,
    Thanks for your reply.
    It is complete a Zcopy of a standard one, but we are facing one or two records are not updating correctly out of hundreds of customers in the worklist.

  • Separate Dunning Letter for Individual line items

    Hi All,
    Please let me know if it is possible to produce a separate dunning notice for each individual line item in an invoice.
    Thanks,
    Naresh

    Hi,
    1.loop at Line item.
       Write_form.
        endloop.
    2.This will give the seperate dunning letter for each invoice line item.This can be write in the driver pg.
    Regards,
    Shiva Kumar

  • Interest calculation on Open items and cleared items

    Dear Experts
    I am trying to do needful configuration for interest indicator on which interest can be calculated for open items and cleared items as well.  But,  system is calculating interest for open items properly, but not calculating interest on cleared items with same interest indicator,  I am repeatedly getting error "interest calculation indicator is not compatible with this type of interest calculation"
    Is it possible to use same interest indicator for open line items and cleared line items of customer?
    If possible, request you share the needful config steps to do same.
    points will be awarded for usful reply.
    Best regards,
    S. Habib Pasha.

    Hello Habib,
    depending on the requests you can setup a item interest calculation or a balance interest calculation "Define calculation types".
    IIC: check settings (item selection, all cleared items, only items with payment, no cleared items) "Prepare item interest calculation"
    I guess you have setup the item interest calculation - maybe you have mixed some entries with BAIC.
    Check in "Prepare account balance interest calculation" whether you have entries with the indicator you want to use.
    At least check your entries in "Define time-based Terms" If you have entries with Balance account interest calculation the system gives even an error.
    Hope this is helpfull.
    Best regards
       Horst

  • Vendor field empty for RE line items in FBL3N

    dear all-
    I'm experiencing a strange situation. Instead of using the MM-report, I want to do a GRIR analysis in FI. When I run FBL3N for the GRIR account I see that for the goods-receipt related documents (doc type WE) field like puchase order and vendor number are populated (and contain a value). However for the line items that come from the invoice the field purchase order is filled but the field vendor is blank.
    I did have a look at the BSEG table for the WE- and RE-related documents: for all line items of the WE document (goods receipt) the fields purchase order and vendor contained a value, for the RE document (invoice receipt) all line items have a value for purchase order but only the first line item (vendor line) has a value for the field vendor. On all the other line items the vendor field is blank.
    Looks pretty strange to me, who has a good solution?
    thx
    Ben

    hi Vishal-
    Thanks for the BSIK, BSIS tip!
    In the meantime I did find report RFWERE00. I was able to generate a list that indeed showed the vendor number on the GRIR account both from the GR- and RE-document. Didn't have time yet to go over the code to figure out where this report gets its data from.
    The report offers options to do actual clearing and do postings ... I'm not interested in that. Only in the list. I have a start now ...
    ... If you have another I idea that prevents me from creating a customer report ... I'm eager to hear it!
    rgds
    Ben

  • Unable to delete line item with 0 quantity in Invoice.

    Hi Experts,
    I came across a Invoice which reflects in VF04 as pending Billing due list. When i checked at the inter company Invoice i came across a line item with "0" quantity and price as zero, interestingly the replinishment cross company delivery document  for the same line item for "0" quantity had a Batch assigned to it.
    Now the issue is cusotmer has selected the line item with XX quantity and have selected the accounting document to be generated but the line item with "0 was left over and now still reflects in VF04.
    Customer does not want to reverse the full cycle to resolve the issue since the document was created a year back.My Question  is can we get the line item with "0" quantity to clear accounting so that it will not reflect in VF04.If so what will be process to do that.
    Thanks in Advance to advice.
    Regards,
    Sridhar.R

    Hi,
    It is  not possible to delete this line item, you can discuss with your client and delete it from the table.
    And now coming to the reasons why it has come into the invoice & Delivery
    1. The Batch Item category must have been configured as relevant for billing...check this and make it irrelevant if the client does not do batch specific billing. --- This will stop the batches from coming into the invoice.
    2.  Check for the batch item category in delivery if Zero quanity is allowed...if it is allowed make it not allowed and make it an Error message, whenever there is a zero quantity system will give a message.

  • Spaces in between line items in script

    Hi ,
    In script forms my problem is like this, when iam printing page with 2 line items(line items are in main window) ,
    the totals and subtotals at the bottom are displaying perfectly( sub totals are given in footer window).
    If line items are increased more , than the subtotals part is printing in second page.
    In form here for first line item they are printing some  (16,4,2,1'%') calculations in 4 sub lines,
    For remaining line items there is no calculations(i.e., the loop is entering for calculations but as per one condition
    in print program that calculations are becoming blank , on this reason the space is coming for remaining line items which is not required ).
    Now my requirement is i have to reduce the space between 2nd and 3rd line item. Please help me in this
    Print program
                          TABLE DECLARATION                        *
    TABLES: /ivl/zmb_bealo,    "Bill of Entry Item allocation
            /ivl/zmb_becdat,   "Bill of Entry Company Level Data
            /ivl/zmb_behdr,    "Bill of entry Header
            /ivl/zmb_beitm,    "Bill of Entry item
            /ivl/zmb_beref,    "Reference for Bill of Entry
            /ivl/zcm_codmas,   "Code Master Table
            /ivl/zmb_bndmas,
            /ivl/zmb_tarnt,
            zvincust,
            dd07l,             "R/3 DD: values for the domains
            dd07t,             "DD: Texts for Domain Fixed
            dd07v,             "View on fixed values and domain texts
            t005t,             "Country Names
            kna1,              "Customer Master
            t001,              "Company Codes
            LTAK,
            LTAP,             "Transfer order item    "$05
            VBPA.             "Sales Document Partner "$05
                         SELECTION-SCREEN                         *
    PARAMETERS: tonumber LIKE /ivl/zmb_behdr-zztono OBLIGATORY,
                p_lgnum type lgnum obligatory.
    select-options: s_lgnum for LTAK-lgnum no-display.
                          End Of Selection                        *
    DATA  wrk_bukrs LIKE /ivl/zmb_behdr-bukrs .
    DATA  wrk_mode(8).
    DATA sum_totdty1(75).
    DATA sum_totdty2(75).
    Modification - Changed data type of variable from CHAR to INT
    *ATA count(2)  VALUE 0 .
    DATA : count TYPE i.
                  Internal table declaration                      *
    DATA: BEGIN OF it_behdr OCCURS 0 ,
           docno LIKE /ivl/zmb_behdr-docno,
           bondno LIKE /ivl/zmb_behdr-bondno,
           bonddat LIKE /ivl/zmb_behdr-bonddat,
           docyear LIKE /ivl/zmb_behdr-docyear,
           zzchanumber LIKE /ivl/zmb_behdr-zzchanumber,
           doctype LIKE /ivl/zmb_behdr-doctype,
           vessname LIKE /ivl/zmb_behdr-vessname,
           rotno LIKE /ivl/zmb_behdr-rotno,
           rotdt LIKE /ivl/zmb_behdr-rotdt,
           portship LIKE /ivl/zmb_behdr-portship,
           orgcntry LIKE /ivl/zmb_behdr-orgcntry,
           modtran LIKE /ivl/zmb_behdr-modtran,
           concntry LIKE /ivl/zmb_behdr-concntry,
           impdpsno LIKE /ivl/zmb_behdr-impdpsno,
           impdpdat LIKE /ivl/zmb_behdr-impdpdat,
           zzkunnr LIKE /ivl/zmb_behdr-zzkunnr,
           pdocno LIKE /ivl/zmb_behdr-pdocno,
           pdocyear LIKE /ivl/zmb_behdr-pdocyear,
           arivport LIKE /ivl/zmb_behdr-arivport,
           zztono LIKE /ivl/zmb_behdr-zztono,
           bukrs  LIKE /ivl/zmb_behdr-bukrs,
           linno LIKE  /ivl/zmb_beref-linno,
           ablno  LIKE /ivl/zmb_beref-ablno,
           abldat LIKE /ivl/zmb_beref-abldat,
           loadport LIKE /ivl/zmb_behdr-loadport,
           orgicnty(15),
           conscnty(15),
           portdesc(15),
           portcode LIKE /ivl/zcm_codmas-coddesc,
           coddesc LIKE /ivl/zcm_codmas-coddesc,
           notinum1 LIKE zvincust-notinum1,
    *Begin of modification for change $01
         descs1 like /ivl/zmb_tarnt,
          descs1 LIKE /ivl/zmb_tarnt-descs,
    *End of modification for change $01
           dsirregno LIKE zvincust-dsirregno,
           iecode1 LIKE zvincust-iecode,
           iecode LIKE zvincust-iecode,
           iecdesc(15),
           zzintrst LIKE /ivl/zmb_behdr-zzintrst,
           bondregnno LIKE /ivl/zmb_bndmas-bondregnno,
           bondstadat LIKE /ivl/zmb_bndmas-bondstadat,
           bondenddat LIKE /ivl/zmb_bndmas-bondenddat,
           expdt1 LIKE /ivl/zmb_bndmas-expdt1,
           expdt2 LIKE /ivl/zmb_bndmas-expdt2 ,
           name1  LIKE kna1-name1,
           name2  LIKE kna1-name2,
           ort01  LIKE kna1-ort01,
           pstl2  LIKE kna1-pstl2,
           telfx  LIKE kna1-telfx,
           coname LIKE t005t-landx,
           count(3) TYPE n VALUE 0,
           kunnr  LIKE VBPA-kunnr,
       END OF it_behdr.
    DATA : it_behdr1 LIKE it_behdr OCCURS 0 WITH HEADER LINE.
    DATA : zdocno LIKE it_behdr-docno.
    DATA : BEGIN OF it_bndmas OCCURS 0,
           bondregnno LIKE /ivl/zmb_bndmas-bondregnno,
           bondstadat LIKE /ivl/zmb_bndmas-bondstadat,
           bondenddat LIKE /ivl/zmb_bndmas-bondenddat,
           expdt1 LIKE /ivl/zmb_bndmas-expdt1,
           expdt2 LIKE /ivl/zmb_bndmas-expdt2 ,
    END OF it_bndmas.
    DATA spellamt LIKE spell.
    DATA: BEGIN OF it_beitm OCCURS 0 ,
              cthno  LIKE /ivl/zmb_beitm-cthno,
              matnr  LIKE /ivl/zmb_beitm-matnr,
              matldes LIKE /ivl/zmb_beitm-matldes,
              waers1  LIKE /ivl/zmb_beitm-waers1,
              netpr   LIKE /ivl/zmb_beitm-netpr,
              wkurs1  LIKE /ivl/zmb_beitm-wkurs1,
              wkurs2  LIKE /ivl/zmb_beitm-wkurs2,
              wkurs3  LIKE /ivl/zmb_beitm-wkurs3,
              frgtamt LIKE /ivl/zmb_beitm-frgtamt,
              insuamt LIKE /ivl/zmb_beitm-insuamt,
              agcomm  LIKE /ivl/zmb_beitm-agcomm,
              misschat LIKE /ivl/zmb_beitm-misschar,
              landchar LIKE /ivl/zmb_beitm-landchar,
              totval  LIKE /ivl/zmb_beitm-totval,
              assval  LIKE /ivl/zmb_beitm-assval,
              sysassval LIKE /ivl/zmb_beitm-sysassval,
              menge   LIKE /ivl/zmb_beitm-menge,
              meins   LIKE /ivl/zmb_beitm-meins,
              zzcetno LIKE /ivl/zmb_beitm-zzcetno,
              docno   LIKE /ivl/zmb_beitm-docno,
              doctype LIKE /ivl/zmb_beitm-doctype,
              docyear LIKE /ivl/zmb_beitm-docyear,
              boeitno LIKE /ivl/zmb_beitm-boeitno,
              bcdrt LIKE /ivl/zmb_bealo-bcdrate,
              bcdamt LIKE /ivl/zmb_bealo-bcdvalu,
              acdrt LIKE /ivl/zmb_bealo-acdrate,
              acdamt LIKE /ivl/zmb_bealo-acdvalu,
              sum911 LIKE /ivl/zmb_bealo-acdvalu,
              dutyrat LIKE /ivl/zmb_bedut-dutyrat,
              dutcode LIKE /ivl/zmb_bedut-dutcode,
              dutcodebcd LIKE /ivl/zmb_bedut-dutcode,
              dutcodecvd LIKE /ivl/zmb_bedut-dutcode,
              dutcodesad LIKE /ivl/zmb_bedut-dutcode,
              dutyratbcd LIKE /ivl/zmb_bedut-dutyrat,
              dutyratcvd LIKE /ivl/zmb_bedut-dutyrat,
              dutyratsad LIKE /ivl/zmb_bedut-dutyrat,
              sysvalubcd LIKE /ivl/zmb_bedut-sysvalu,
              sysvalucvd LIKE /ivl/zmb_bedut-sysvalu,
              sysvalusad LIKE /ivl/zmb_bedut-sysvalu,
              cetno LIKE /ivl/zmb_tarnt-cetno,
              descs LIKE /ivl/zmb_tarnt-descs,
              totassval   LIKE  /ivl/zmb_beitm-assval,
              sad LIKE /ivl/zmb_bedut-dutcode  VALUE 'SAD',
              totsysvalubcd   LIKE /ivl/zmb_bedut-sysvalu,
              actvalu LIKE /ivl/zmb_bedut-actvalu,
              zbcdasstot LIKE /ivl/zmb_bedut-sysvalu,
              zdutyratcvd LIKE /ivl/zmb_bedut-sysvalu,
              zpcvdtot LIKE /ivl/zmb_bedut-sysvalu,
              ztotduty LIKE /ivl/zmb_bedut-sysvalu,
              zbatcvdtot LIKE /ivl/zmb_bedut-sysvalu,
              zdutyratsad LIKE /ivl/zmb_bedut-dutyrat,
              zsad LIKE /ivl/zmb_bedut-sysvalu,
              zpsadtot LIKE /ivl/zmb_bedut-sysvalu,
              dutyratcess LIKE /ivl/zmb_bedut-dutyrat, " for cess value $03
              sysvalucess LIKE /ivl/zmb_bedut-sysvalu,  " for cess value $03
              dutyratedc LIKE /ivl/zmb_bedut-dutyrat, " for cess value $03
              sysvaluedc LIKE /ivl/zmb_bedut-sysvalu,  " for cess value $03
              zpcesstot LIKE /ivl/zmb_bedut-sysvalu,
              zpedctot LIKE /ivl/zmb_bedut-sysvalu,
             zpsadtot LIKE /ivl/zmb_bedut-sysvalu,
              dutyrathcs LIKE /ivl/zmb_bedut-dutyrat, " for Higher Ed Cess  $04
              sysvaluhcs LIKE /ivl/zmb_bedut-sysvalu, " for Higher Ed Cess  $04
              zphcstot   LIKE /ivl/zmb_bedut-dutyrat, " for Higher Ed Cess  $04
              dutyrathdc LIKE /ivl/zmb_bedut-dutyrat, " for Higher Ed Cess  $04
              sysvaluhdc LIKE /ivl/zmb_bedut-sysvalu, " for Higher Ed Cess  $04
              zphdctot   LIKE /ivl/zmb_bedut-dutyrat, " for Higher Ed Cess  $04
    END OF it_beitm.
    DATA : BEGIN OF it_zbeitm OCCURS 0,
           cthno  LIKE /ivl/zmb_beitm-cthno,
           zbcdasstot LIKE /ivl/zmb_bedut-sysvalu,
           zdutyratcvd LIKE /ivl/zmb_bedut-sysvalu,
           zpcvdtot LIKE /ivl/zmb_bedut-sysvalu,
           ztotduty LIKE /ivl/zmb_bedut-sysvalu,
           zbatcvdtot LIKE /ivl/zmb_bedut-sysvalu,
           zdutyratsad LIKE /ivl/zmb_bedut-dutyrat,
           zpcesstot LIKE /ivl/zmb_bedut-sysvalu,
           zpedctot LIKE /ivl/zmb_bedut-sysvalu,
           zphcstot  LIKE /ivl/zmb_bedut-sysvalu,                   "$04
           zphdctot LIKE /ivl/zmb_bedut-sysvalu,                    "$04
           zsad LIKE /ivl/zmb_bedut-sysvalu,
           zpsadtot LIKE /ivl/zmb_bedut-sysvalu,
           dutyratcess LIKE /ivl/zmb_bedut-dutyrat, " for cess value $03
           sysvalucess LIKE /ivl/zmb_bedut-sysvalu,  " for cess value $03
           dutyratedc LIKE /ivl/zmb_bedut-dutyrat, " for cess value $03
           sysvaluedc LIKE /ivl/zmb_bedut-sysvalu,  " for cess value $03
           dutyrathcs LIKE /ivl/zmb_bedut-dutyrat, " Higher Ed Cess  $04
           sysvaluhcs LIKE /ivl/zmb_bedut-sysvalu, " Higher Ed Cess  $04
           dutyrathdc LIKE /ivl/zmb_bedut-dutyrat, " Higher Ed Cess  $04
           sysvaluhdc LIKE /ivl/zmb_bedut-sysvalu, " Higher Ed Cess  $04
    END OF it_zbeitm.
    DATA: BEGIN OF it_vbeln occurs 0,                      "$05
           wdno like ltap-vbeln,
    END OF it_vbeln.                                       "$05
    DATA : beitm LIKE it_beitm OCCURS 0 WITH HEADER LINE.
    DATA beitm1 LIKE it_beitm .
    DATA tot_duty LIKE /ivl/zmb_beitm-actdtypyd.
    DATA tot_duty1 LIKE /ivl/zmb_beitm-actdtypyd.
    DATA ind_tot LIKE /ivl/zmb_beitm-actdtypyd.
    DATA inv_tot LIKE /ivl/zmb_beitm-actdtypyd.
    DATA totalbcd  LIKE /ivl/zmb_bedut-sysvalu.
    DATA totalbcd1  LIKE /ivl/zmb_bedut-sysvalu.
    DATA item_duty LIKE /ivl/zmb_beitm-actdtypyd.
    DATA dutyratcvd  LIKE /ivl/zmb_bedut-dutyrat.
    DATA tot_dutysad LIKE /ivl/zmb_beitm-actdtypyd.
    DATA setamt LIKE /ivl/zmb_beitm-actdtypyd.
    DATA setamt1 LIKE /ivl/zmb_beitm-actdtypyd.
    DATA totassval1  LIKE  /ivl/zmb_beitm-assval.
    DATA pagetotal LIKE  /ivl/zmb_beitm-assval.
    DATA pagetotal1 LIKE  /ivl/zmb_beitm-assval.
    DATA pagetotal2 LIKE  /ivl/zmb_beitm-assval.
    DATA it_bedut LIKE /ivl/zmb_bedut OCCURS 0 WITH HEADER LINE.
    DATA dutyratcvd1  LIKE /ivl/zmb_bedut-dutyrat.
    DATA pagetotal11 LIKE  /ivl/zmb_beitm-assval.
    DATA setamt11 LIKE /ivl/zmb_beitm-actdtypyd.
    DATA totalbcd11 LIKE /ivl/zmb_bedut-sysvalu.
    DATA item_duty1 LIKE /ivl/zmb_beitm-actdtypyd.
    DATA cvdtotal LIKE /ivl/zmb_bedut-sysvalu.
    DATA cvdtotal1 LIKE /ivl/zmb_bedut-sysvalu.
    DATA sadtotal LIKE /ivl/zmb_bedut-sysvalu.
    DATA sadtotal1 LIKE /ivl/zmb_bedut-sysvalu.
    DATA netpr1    LIKE   /ivl/zmb_beitm-netpr.
    DATA netpr3    LIKE   /ivl/zmb_beitm-netpr.
    DATA insuamt1  LIKE /ivl/zmb_beitm-insuamt.
    DATA insuamt3  LIKE /ivl/zmb_beitm-insuamt.
    DATA frgtamt2  LIKE /ivl/zmb_beitm-frgtamt.
    DATA frgtamt1  LIKE /ivl/zmb_beitm-frgtamt.
    DATA frgtamt3  LIKE /ivl/zmb_beitm-frgtamt.
    DATA misschar1 LIKE /ivl/zmb_beitm-misschar.
    DATA landchar1 LIKE /ivl/zmb_beitm-landchar.
    DATA missland  LIKE /ivl/zmb_beitm-landchar.
    DATA totvalin1 LIKE /ivl/zmb_beitm-totval.
    DATA imptot  LIKE /ivl/zmb_beitm-sysassval.
    DATA saltot  LIKE /ivl/zmb_beitm-assval.
    DATA subtotduty LIKE /ivl/zmb_beitm-sysassval.
    DATA subamtbas LIKE /ivl/zmb_beitm-sysassval.
    DATA imptot1 LIKE /ivl/zmb_beitm-sysassval.
    DATA saltot1 LIKE /ivl/zmb_beitm-assval.
    DATA misccharge LIKE /ivl/zmb_beitm-misschar.
    DATA netpr2  LIKE   /ivl/zmb_beitm-netpr.
    DATA netpr4  LIKE   /ivl/zmb_beitm-netpr.
    DATA insuamt2   LIKE /ivl/zmb_beitm-insuamt.
    DATA misschar2  LIKE /ivl/zmb_beitm-misschar.
    DATA landchar2  LIKE /ivl/zmb_beitm-landchar.
    DATA totvalin2  LIKE /ivl/zmb_beitm-totval.
    DATA sysvalin2  LIKE /ivl/zmb_beitm-sysassval.
    DATA assvalin2  LIKE /ivl/zmb_beitm-sysassval.
    DATA pbcdtot LIKE  /ivl/zmb_beitm-sysassval.
    DATA passvaltot  LIKE /ivl/zmb_beitm-sysassval.
    DATA bcdasstot LIKE  /ivl/zmb_beitm-sysassval.
    DATA pcvdtot  LIKE  /ivl/zmb_beitm-sysassval.
    DATA totduty  LIKE  /ivl/zmb_beitm-sysassval.
    DATA totduty1  LIKE  /ivl/zmb_beitm-sysassval.
    DATA psadtot LIKE   /ivl/zmb_beitm-sysassval.
    DATA psadtot1 LIKE   /ivl/zmb_beitm-sysassval.
    DATA batcvdtot LIKE /ivl/zmb_beitm-sysassval.
    DATA dutypaid1  LIKE /ivl/zmb_beitm-sysassval.
    DATA dutypaid  LIKE  /ivl/zmb_beitm-sysassval.
    DATA intrs     LIKE  /ivl/zmb_beitm-sysassval.
    DATA var1 LIKE  /ivl/zmb_beitm-sysassval.
    DATA var2 LIKE  /ivl/zmb_beitm-sysassval.
    DATA var3 LIKE  /ivl/zmb_beitm-sysassval.
    DATA var4 LIKE  /ivl/zmb_beitm-sysassval.
    DATA var5 LIKE  /ivl/zmb_beitm-sysassval.
    DATA var6 LIKE  /ivl/zmb_bedut-dutyrat.
    DATA var7 LIKE  /ivl/zmb_bedut-sysvalu.
    DATA var8 LIKE  /ivl/zmb_beitm-sysassval.
    insert on 120704 for education cess  $03
    DATA var9 LIKE  /ivl/zmb_beitm-sysassval. "/ivl/zmb_bedut-dutyrat.
    DATA var10 TYPE p DECIMALS 2.  "ike /ivl/zmb_beitm-sysassval.
    DATA var11 LIKE /ivl/zmb_beitm-sysassval. "/ivl/zmb_bedut-dutyrat.
    DATA var12 LIKE /ivl/zmb_beitm-sysassval.
    DATA var13 TYPE p DECIMALS 2.  "like /ivl/zmb_beitm-sysassval.
    DATA var14 LIKE /ivl/zmb_beitm-sysassval.
    DATA pcestot LIKE  /ivl/zmb_beitm-sysassval.
    DATA pcestot1 LIKE  /ivl/zmb_beitm-sysassval.
    DATA pedctot LIKE  /ivl/zmb_beitm-sysassval.
    DATA pedctot1 LIKE  /ivl/zmb_beitm-sysassval.
    end of insert on 120704 for education cess  $03
    DATA dutyratsad LIKE /ivl/zmb_bedut-dutyrat.
    DATA sysvalusad LIKE /ivl/zmb_bedut-sysvalu.
    DATA sad(4) TYPE c VALUE 'SAD'.
    DATA pgtotal LIKE t001r_bf-amount.
    DATA : var15    like /ivl/zmb_beitm-sysassval,                   "$04
           var16    TYPE p DECIMALS 2,                               "$04
           var17    LIKE /ivl/zmb_beitm-sysassval,                   "$04
           var18    LIKE /ivl/zmb_beitm-sysassval,                   "$04
           var19    TYPE p DECIMALS 2,                               "$04
           var20    LIKE /ivl/zmb_beitm-sysassval,                   "$04
           var21    TYPE p DECIMALS 2,                               "$04
           var22    TYPE p DECIMALS 2,                               "$04
           phcstot  LIKE /ivl/zmb_beitm-sysassval,                   "$04
           phcstot1 LIKE /ivl/zmb_beitm-sysassval,                   "$04
           phdctot  LIKE /ivl/zmb_beitm-sysassval,                   "$04
           phdctot1 LIKE /ivl/zmb_beitm-sysassval.                   "$04
    DATA :   w_cname1 LIKE adrc-name1,
               w_cname2 LIKE adrc-name2,
               w_cname3 LIKE adrc-name3,
               w_cstreet LIKE adrc-street,
               w_chouse_num1 LIKE adrc-house_num1,
               w_cstr_suppl1 LIKE adrc-str_suppl1,
               w_cstr_suppl2 LIKE adrc-str_suppl1,
               w_ccity1 LIKE adrc-city1,
               w_cregion LIKE adrc-region,
               w_ccountry LIKE adrc-country,
               w_cpost_code1 LIKE adrc-post_code1,
               w_cpo_box LIKE adrc-po_box,
               w_ctel_number LIKE adrc-tel_number,
               w_cfax_number LIKE adrc-fax_number,
               w_cname4 LIKE adrc-name1,                              "$05
               w_cname5 LIKE adrc-name2,                              "$05
               w_cname6 LIKE adrc-name3,                              "$05
               w_cstreet1 LIKE adrc-street,                           "$05
               w_chouse_num2 LIKE adrc-house_num1,                    "$05
               w_cstr_suppl3 LIKE adrc-str_suppl1,                    "$05
               w_cstr_suppl4 LIKE adrc-str_suppl1,                    "$05
               w_ccity2 LIKE adrc-city1,                              "$05
               w_cregion1 LIKE adrc-region,                           "$05
               w_ccountry1 LIKE adrc-country,                         "$05
               w_cpost_code2 LIKE adrc-post_code1,                    "$05
               w_cpo_box1 LIKE adrc-po_box,                           "$05
               w_ctel_number1 LIKE adrc-tel_number,                   "$05
               w_cfax_number1 LIKE adrc-fax_number.                   "$05
    DATA : addr LIKE lfa1-adrnr,
           w_ccountry_text LIKE t005t-landx.
    DATA : cthno1 LIKE it_beitm-cthno,
           cthno2 LIKE it_beitm-cthno,
           bonddat1 LIKE sy-datum.
    data:  W_PLADDR     TYPE WISO_PLADDR.
    DATA: w_lgnum    type lgnum.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR tonumber.
    AT SELECTION-SCREEN.
      clear w_lgnum.
      SELECT single lgnum
             into w_lgnum
             FROM  ltak
             WHERE  lgnum  = p_lgnum
             AND    tanum  = tonumber.
      IF SY-SUBRC <> 0.
        MESSAGE E000 WITH 'Invalid TO number '
                          tonumber
                          ' in warehouse '
                          p_lgnum.
      ENDIF.
                     Start of Selection                                  *
    START-OF-SELECTION .
      perform f_read_address using tonumber.
      PERFORM write_header1.
      PERFORM item_print.
    END-OF-SELECTION.
                     Form  WRITE_HEADER1
    FORM write_header1.
      CLEAR it_behdr.
      REFRESH it_behdr.
      SELECT a~bondno a~bonddat a~docno a~docyear a~zzchanumber a~doctype
                 a~vessname a~rotno a~rotdt a~portship a~orgcntry a~modtran
                    a~rotno a~rotdt a~concntry a~impdpsno a~impdpdat
                    a~concntry  a~zzkunnr a~pdocno a~pdocyear a~arivport
                    a~zztono b~bondregnno b~bondstadat b~bondenddat
                    b~expdt1 b~expdt2 a~loadport a~zzintrst
                    INTO CORRESPONDING FIELDS OF TABLE  it_behdr
                   FROM /ivl/zmb_behdr AS a INNER JOIN /ivl/zmb_bndmas AS b
                   ON a~bondno = b~bondno
                   WHERE zztono = tonumber
                   AND a~bonddat = b~bonddate.
      SORT it_behdr.
      LOOP AT it_behdr.
        SELECT SINGLE adrnr
        INTO addr FROM lfa1
        WHERE sortl = it_behdr-zzchanumber.
        SELECT SINGLE name1 name2 name3 street house_num1 str_suppl1
                      str_suppl2 city1  post_code1
        INTO (w_cname1, w_cname2, w_cname3, w_cstreet,w_chouse_num1,
              w_cstr_suppl1, w_cstr_suppl2, w_ccity1, w_cpost_code1)
        FROM adrc
        WHERE addrnumber = addr.
        SELECT  SINGLE *
        FROM /ivl/zmb_beref
    *Begin of modification for change $02
    WHERE  refdocno = it_behdr-bondno.
        WHERE boerefno =  it_behdr-pdocno AND
              boeyr  =  it_behdr-pdocyear.
    *End of modification for change $02
        IF sy-subrc = 0.
          it_behdr-linno  = /ivl/zmb_beref-linno.
          it_behdr-ablno  =  /ivl/zmb_beref-ablno.
          it_behdr-abldat = /ivl/zmb_beref-abldat.
        ENDIF.
        SELECT SINGLE *
        FROM t005t
        WHERE land1  = /ivl/zmb_behdr-orgcntry
          AND spras  = 'E'.
        IF sy-subrc = 0.
          it_behdr-orgicnty = t005t-landx.
        ENDIF.
        SELECT SINGLE *
        FROM  /ivl/zcm_codmas
        WHERE codtyp = 'PCOD'
          AND code = it_behdr-arivport.
        IF sy-subrc = 0.
          it_behdr-portcode = /ivl/zcm_codmas-coddesc.
        ENDIF.
        SELECT SINGLE *
        FROM /ivl/zcm_codmas
        WHERE code = it_behdr-concntry.
        IF sy-subrc = 0.
          it_behdr-coddesc = /ivl/zcm_codmas-coddesc.
        ENDIF.
        SELECT SINGLE *
        FROM  /ivl/zcm_codmas
        WHERE codtyp  = 'PORT'
          AND code = it_behdr-loadport.
        IF sy-subrc = 0.
          it_behdr-portdesc = /ivl/zcm_codmas-coddesc.
        ENDIF.
        SELECT SINGLE *
        FROM  t005t
        WHERE land1 = it_behdr-concntry.
        IF sy-subrc = 0.
          it_behdr-coname = t005t-landx.
        ENDIF.
        SELECT *
        FROM kna1
        WHERE kunnr = it_behdr-zzkunnr.
          IF sy-subrc = 0.
            it_behdr-name1 = kna1-name1.
            it_behdr-name2 = kna1-name2.
            it_behdr-ort01 = kna1-ort01.
            it_behdr-pstl2 = kna1-pstl2.
            it_behdr-telfx = kna1-telfx.
          ENDIF.
        ENDSELECT.
        SELECT *
        FROM zvincust
        WHERE kunnr = it_behdr-zzkunnr.
          IF sy-subrc = 0.
            it_behdr-notinum1  = zvincust-notinum1.
            it_behdr-dsirregno = zvincust-dsirregno.
            it_behdr-iecode1   = zvincust-iecode.
          ENDIF.
        ENDSELECT.
        SELECT SINGLE *
        FROM /ivl/zmb_tarnt
        WHERE tarntno = it_behdr-notinum1.
        IF sy-subrc = 0.
          it_behdr-notinum1 = /ivl/zmb_tarnt-tarntno.
          it_behdr-descs1 = /ivl/zmb_tarnt-descs.
        ENDIF.
        SELECT iecode
        INTO it_behdr-iecode
        FROM zvincust
        WHERE kunnr = 'IN02'.
        ENDSELECT.
           MODIFY it_behdr TRANSPORTING name1 name2 ort01 pstl2 telfx
               linno ablno abldat coname portdesc portcode
               coddesc notinum1 dsirregno iecode1 conscnty iecode descs1.
           SELECT SINGLE kunnr                                              "$05
                        INTO it_behdr-kunnr
                        FROM VBPA
                        WHERE vbeln = it_vbeln-wdno
                          AND PARVW = 'AG'.                                 "$05
           SELECT SINGLE adrnr                                              "$05
                 INTO  addr FROM Kna1
                 WHERE kunnr = it_behdr-kunnr.                              "$05
           SELECT SINGLE name1 name2 name3 street house_num1 str_suppl1     "$05
                      str_suppl2 city1  post_code1
           INTO (w_cname4, w_cname5, w_cname6, w_cstreet1,w_chouse_num2,
              w_cstr_suppl3, w_cstr_suppl4, w_ccity2, w_cpost_code2)
           FROM adrc
           WHERE addrnumber = addr.                                          "$05
      ENDLOOP.
       SELECT SINGLE   vbeln INTO it_vbeln                  "$05
               FROM     LTAP
               WHERE    tanum = tonumber
               AND      lgnum  = w_lgnum.                 "$05
    ENDFORM.                               " WRITE_HEADER1
                      Form  ITEM_DETAILS
    FORM item_details.
      SELECT *
      FROM /ivl/zmb_bedut
      INTO TABLE it_bedut
      WHERE doctype = it_behdr-doctype
        AND docno   = it_behdr-docno
        AND docyear = it_behdr-docyear.
      SELECT *
      FROM /ivl/zmb_beitm
      INTO CORRESPONDING FIELDS OF it_beitm
      WHERE doctype = it_behdr-doctype
        AND docno   = it_behdr-docno
        AND docyear = it_behdr-docyear.
        LOOP AT it_bedut WHERE doctype = it_beitm-doctype
                           AND docno   = it_beitm-docno
                           AND docyear = it_beitm-docyear
                           AND boeitno = it_beitm-boeitno.
          CASE it_bedut-dutcode.
            WHEN  'BCD'.
              MOVE it_bedut-dutyrat TO it_beitm-dutyratbcd.
              MOVE it_bedut-sysvalu TO it_beitm-sysvalubcd.
            WHEN 'CVD'.
              MOVE it_bedut-dutyrat TO it_beitm-dutyratcvd.
              MOVE it_bedut-sysvalu TO it_beitm-sysvalucvd.
            WHEN 'SAD'.
              MOVE it_bedut-dutyrat TO it_beitm-dutyratsad.
              MOVE it_bedut-sysvalu TO it_beitm-sysvalusad.
    insert on 120704 for education cess $03
            WHEN 'ZCES'. "zces
              MOVE it_bedut-dutyrat TO it_beitm-dutyratcess.
              MOVE it_bedut-sysvalu TO it_beitm-sysvalucess.
            WHEN 'ZEDC'.  "zedc
              MOVE it_bedut-dutyrat TO it_beitm-dutyratedc.
              MOVE it_bedut-sysvalu TO it_beitm-sysvaluedc.
    end of insert on 120704 for education cess $03
            WHEN 'ZHCS'.
              MOVE it_bedut-dutyrat TO it_beitm-dutyrathcs.          "$04
              MOVE it_bedut-sysvalu TO it_beitm-sysvaluhcs.          "$04
            WHEN 'ZHDC'.                                             "$04
              MOVE it_bedut-dutyrat TO it_beitm-dutyrathdc.          "$04
              MOVE it_bedut-sysvalu TO it_beitm-sysvaluhdc.          "$04
           it_beitm-totassval  = it_beitm-totassval + it_beitm-sysvalubcd +
                                                            it_beitm-assval.
      it_beitm-totsysvalubcd = it_beitm-totsysvalubcd + it_beitm-sysvalubcd.
          ENDCASE.
        ENDLOOP.
        APPEND it_beitm.
        CLEAR it_beitm.
      ENDSELECT.
      SORT it_beitm BY cthno.
      MOVE it_beitm TO beitm.
      MOVE it_beitm TO it_zbeitm.
      APPEND it_zbeitm.
      CLEAR it_zbeitm.
    ENDFORM.                               " ITEM_DETAILS
                        Form  BONDNUMBER
    FORM bondnumber.
      READ TABLE it_behdr WITH KEY
           zztono = tonumber
           docno  = zdocno.
      IF sy-subrc = 0.
        MOVE it_behdr TO it_behdr1.
        APPEND it_behdr1.
      ENDIF.
    CLEAR zdocno.
    ENDFORM.                    " BONDNUMBER
                       Form  ITEM_PRINT
    FORM item_print.
      TABLES : itcpo.
      TABLES : itcpp.
      DATA: params   LIKE pri_params,
            arparams LIKE arc_params,
            days(1)  TYPE n VALUE 2,
            valid    TYPE c.
      itcpo-tdpreview = 'X'.
      itcpo-tdnewid   = 'X'.
      itcpo-tdimmed   = 'X'.
      itcpo-tddelete  = 'X'.
      CALL FUNCTION 'OPEN_FORM'
        EXPORTING
          application    = 'TX'
          archive_index  = ' '
          archive_params = '1'
          device         = 'PRINTER'
          dialog         = 'X'
          form           = ' '
          language       = sy-langu
          options        = itcpo
        IMPORTING
          RESULT         = itcpp
        EXCEPTIONS
          OTHERS         = 7.
                      Header IT-table loop--start              *
      LOOP AT it_behdr.
        zdocno = it_behdr-docno.
        CLEAR it_beitm.
        CLEAR it_zbeitm.
        REFRESH it_beitm.
        REFRESH it_zbeitm.
        PERFORM temp_code.
        CLEAR imptot.
        CLEAR subamtbas.
        CLEAR saltot.
        CLEAR subtotduty.
        CALL FUNCTION 'START_FORM'
          EXPORTING
            form     = 'ZSV_GBOE'
            language = sy-langu.
        CALL FUNCTION 'WRITE_FORM'
          EXPORTING
            element  = 'HEAD'
            function = 'SET'
            type     = 'BODY'
            window   = 'HEADER'.
        CLEAR count.
                  Line item loop --start                          *
        LOOP AT it_beitm.
    *The 8 variables r used for the total to be printed             *
    *at the first line of the tariff number                         *
          READ TABLE it_zbeitm WITH  KEY
                cthno = it_beitm-cthno.
          IF sy-subrc = 0.
            var1 = it_zbeitm-zbcdasstot.
            var2 = it_zbeitm-zdutyratcvd .
            var3 = it_zbeitm-zpcvdtot.
            var4 = it_zbeitm-ztotduty.
            var5 = it_zbeitm-zbatcvdtot.
            var6 = it_zbeitm-zdutyratsad.
            var7 = it_zbeitm-zsad.
            var8 = it_zbeitm-zpsadtot.
            sad  = 'SAD'.
    insert on 120704 for education cess     $03
            var9 = it_beitm-dutyratcess.
            var10 = it_zbeitm-zpcesstot.  "sysvalucess.
            var11 = it_beitm-dutyratedc.
            var12 = it_zbeitm-zpedctot.  "sysvaluedc.
           var13 = it_beitm-sysvalubcd + var3 + var10.             $04
           var14 = var4 + var13 + var12.                           $04
    end of insert on 120704 for education cess
            var15 = it_beitm-dutyrathcs.                            "$04
            var16 = it_zbeitm-zphcstot.                             "$04
            var17 = it_beitm-dutyrathdc.                            "$04
            var18 = it_zbeitm-zphdctot.                             "$04
            var13 = it_beitm-sysvalubcd + var3 + var10 + var16.     "$04
            var14 = var4 + var13 + var12 + var18.                   "$04
            var20 = var10 + var16.                                  "$04
            var21 = var12 + var18.                                  "$04
          ENDIF.
          count = count + 1.
          MOVE it_beitm TO beitm.
          beitm-sad = 'SAD'.
                      FOOTER TOTAL.                                  *
          intrs      = intrs      + ( it_beitm-netpr * it_beitm-wkurs1 ).
          netpr1     = netpr1     + it_beitm-netpr.
          frgtamt1   = frgtamt1   + ( it_beitm-frgtamt * it_beitm-wkurs2 ).
          frgtamt3   = frgtamt3   + it_beitm-frgtamt.
          insuamt3   = insuamt3   + it_beitm-insuamt.
          insuamt1   = insuamt1   + ( it_beitm-insuamt * it_beitm-wkurs3 ).
          misschar1  = misschar1  + it_beitm-misschat.
          landchar1  = landchar1  + it_beitm-landchar.
          misccharge = ( frgtamt1 + intrs + insuamt1 ) / 100.
          missland   = ( missland + misschar1 + landchar1 ) - totvalin1.
             Sub Total Cal  at end of each Tariff No.                 *
          imptot    = imptot    + it_beitm-sysassval.
          saltot    = saltot    + it_beitm-assval.
          subamtbas = subamtbas + it_beitm-sysvalubcd.
    To Print the total at every first line of the tariff number(cthno) *
          cthno2 = it_beitm-cthno.
          IF cthno1 = cthno2.
            CLEAR var1.
            CLEAR var2.
            CLEAR var3.
            CLEAR var4.
            CLEAR var5.
            CLEAR beitm-dutyratsad.
            CLEAR var7.
            CLEAR var8.
            CLEAR sad.
    Insert for Education cess
            CLEAR : var9, var10, var11, var12.
    End of insert
            CLEAR : var15, var16, var17, var18, var20, var21.       "$04
            CALL FUNCTION 'WRITE_FORM'
              EXPORTING
                element  = 'BOE_DETAILS'
                function = 'APPEND'
                type     = 'BODY'
                window
                ='MAIN'
              EXCEPTIONS
                OTHERS   = 8.
          ELSE.
         subtotduty = subtotduty + it_zbeitm-ztotduty + it_zbeitm-zpsadtot
          subtotduty = subtotduty + it_zbeitm-ztotduty + it_zbeitm-zpsadtot
                      + it_zbeitm-zpedctot.                       "$04
                        + it_zbeitm-zpedctot + it_zbeitm-zphdctot.  "$04
            CALL FUNCTION 'WRITE_FORM'
              EXPORTING
                element  = 'BOE_DETAILS'
                function = 'APPEND'
                type     = 'BODY'
                window   = 'MAIN'
              EXCEPTIONS
                OTHERS   = 8.
          ENDIF.
          AT END OF cthno.
            CALL FUNCTION 'WRITE_FORM'
              EXPORTING
                element  = 'TOTAL'
                function = 'APPEND'
                type     = 'BODY'
                window   = 'MAIN'
              EXCEPTIONS
                OTHERS   = 8.
          ENDAT.
                            FOR INTEREST                                *
          AT LAST.
            bonddat1 = sy-datum.
            it_behdr-bonddat = it_behdr-bonddat + 90.
            bonddat1 = bonddat1 + 6.                                "$04
            IF it_behdr-zzintrst <> 0.
              CALL FUNCTION 'WRITE_FORM'
                EXPORTING
                  element  = 'INTEREST'
                  function = 'APPEND'
                  type     = 'BODY'
                  window   = 'MAIN'
                EXCEPTIONS
                  OTHERS   = 8.
              subtotduty = subtotduty + it_behdr-zzintrst.
            ENDIF.
          ENDAT.
          CLEAR pbcdtot.
          CLEAR passvaltot.
          CLEAR bcdasstot.
          CLEAR pcvdtot.
          CLEAR totduty.
          CLEAR dutypaid.
          CLEAR batcvdtot.
          CLEAR psadtot.
          dutyratcvd = it_beitm-dutyratcvd.
          pgtotal = subtotduty.
          CALL FUNCTION 'FI_ROUND_AMOUNT'
            EXPORTING
              amount_in  = pgtotal
              company    = '1970'
              currency   = 'INR'
            IMPORTING
              amount_out = pgtotal.
          CALL FUNCTION 'SPELL_AMOUNT'
            EXPORTING
              amount    = pgtotal
              currency  = 'INR'
              filler    = ' '
              language  = sy-langu
            IMPORTING
              in_words  = spellamt
            EXCEPTIONS
              not_found = 1
              too_large = 2
              OTHERS    = 3.
          IF sy-subrc = 0.
            sum_totdty1 = spellamt-word.
           sum_totdty2 = spellamt-DECword.
          ENDIF.
                 To Print only 5 items per page                     *
          IF count >= 5.
            netpr3     = netpr1.
            intrs      = intrs.
            frgtamt2   = frgtamt1.
            insuamt2   = insuamt1.
            misschar2  = missland.
            totvalin2  = totvalin1.
            imptot1    = imptot.
            saltot1    = saltot.
            frgtamt3   = frgtamt3.
            insuamt3   = insuamt3.
            imptot     = imptot .
            saltot     = saltot .
            dutyratcvd = it_beitm-dutyratcvd.
            CALL FUNCTION 'WRITE_FORM'
              EXPORTING
                element   = 'FOOTER'
                window
                ='FOOTER'
              EXCEPTIONS
                OTHERS    = 8.
            CALL FUNCTION 'CONTROL_FORM'
              EXPORTING
                command = 'NEW-PAGE'
              EXCEPTIONS
                OTHERS  = 3.
            CLEAR pagetotal1.
            CLEAR totalbcd1.
            CLEAR item_duty.
            CLEAR dutyratcvd.
            CLEAR setamt1.
            CLEAR cvdtotal1.
            CLEAR pagetotal2.
            CLEAR sadtotal1.
            CLEAR count.
            CLEAR totvalin2.
            CLEAR sysvalin2.
            CLEAR assvalin2.
            CLEAR dutypaid.
            CLEAR cthno2.
          ENDIF.
          CLEAR cthno2.
          cthno1 = it_beitm-cthno.
        ENDLOOP.
                     End of the it_beitm                       *
        netpr3    = netpr1.
        intrs     = intrs.
        frgtamt2  = frgtamt1.
        insuamt2  = insuamt1.
        frgtamt3  = frgtamt3.
        insuamt3  = insuamt3.
        misschar2 = missland.
        totvalin2 = totvalin1.
        imptot1   = imptot.
        saltot1   = saltot.
        CALL FUNCTION 'WRITE_FORM'
          EXPORTING
            element   = 'FOOTER'
            window
            ='FOOTER'
          EXCEPTIONS
            OTHERS    = 8.
                      End of sub-total                         *
        CALL FUNCTION 'END_FORM'.
        CLEAR imptot.
        CLEAR subamtbas.
        CLEAR saltot.
        CLEAR cthno1.
        CLEAR cthno2.
        CLEAR var1.
        CLEAR var2.
        CLEAR var3.
        CLEAR var4.
        CLEAR var5.
        CLEAR beitm-dutyratsad.
        CLEAR var7.
        CLEAR var8.
        CLEAR sad.
        CLEAR dutypaid1.
    *Begin of modification for change $02
        CLEAR: intrs,
        netpr1,
        frgtamt1,
        frgtamt3,
        insuamt3,
        insuamt1,
        misschar1,
        landchar1,
        misccharge,
        missland .
    *End of modification for change $02
               Loop ends for the Header table                 *
      ENDLOOP.
      CALL FUNCTION 'CLOSE_FORM'
        EXCEPTIONS
          unopened                 = 1
          bad_pageformat_for_print = 2
          OTHERS                   = 3.
      CLEAR wrk_mode.
      CLEAR /ivl/zcm_codmas.
      CLEAR t001.
      GET PARAMETER ID 'BUK' FIELD wrk_bukrs.
      it_behdr-bukrs = wrk_bukrs.
      SELECT SINGLE *
      FROM  t001
      WHERE bukrs  = wrk_bukrs.
    ENDFORM.                               " PRINT_BILLOFENTRY
                         Form  temp_code
    FORM temp_code.
      CLEAR it_behdr1.
      REFRESH it_behdr1.
      PERFORM bondnumber.
      PERFORM  item_details.
      LOOP AT it_beitm.
        SELECT SINGLE *
        FROM /ivl/zmb_tarnt
        WHERE tarntno = it_beitm-cthno.
        IF sy-subrc = 0.
          it_beitm-cetno = /ivl/zmb_tarnt-cetno.
          it_beitm-descs = /ivl/zmb_tarnt-descs.
          MODIFY it_beitm TRANSPORTING cetno descs docno doctype.
        ENDIF.
        count = count + 1.
        MOVE it_beitm TO beitm.
        MOVE it_beitm TO it_zbeitm.
        beitm-sad  = 'SAD'.
        pbcdtot    = it_beitm-sysvalubcd + pbcdtot.
        passvaltot = it_beitm-assval + passvaltot.
        psadtot    = it_beitm-sysvalusad + psadtot.
        psadtot1   =  psadtot1 + psadtot.
        bcdasstot  = pbcdtot + passvaltot.
        pcvdtot    = it_beitm-sysvalucvd + pcvdtot.
    insert on 150704
        pcestot    = it_beitm-sysvalucess + pcestot.
        pcestot1   =  pcestot1 + pcestot.
        pedctot  = pedctot + it_beitm-sysvaluedc.
        pedctot1    = pedctot1 + pedctot.
    end of insert on 150704
        phcstot    = it_beitm-sysvaluhcs + phcstot.                  "$04
        phcstot1   =  phcstot1 + phcstot.                            "$04
        phdctot    = phdctot + it_beitm-sysvaluhdc.                  "$04
        phdctot1   = phdctot1 + phdctot.                             "$04
        totduty    = pbcdtot + pcvdtot + pcestot + phcstot.          "$04
        totduty1   = totduty1 + totduty.
        batcvdtot  = bcdasstot + pcvdtot.
        totalbcd   = totalbcd + it_beitm-sysvalubcd.
        totassval1 = totassval1 + it_beitm-assval.
        dutypaid   = totduty + psadtot.
        dutyratcvd = it_beitm-dutyratcvd.
        dutyratsad = it_beitm-dutyratsad.                            "$04
        sysvalusad = it_beitm-zsad.
        AT END OF cthno.
          cvdtotal1            = cvdtotal.
          sadtotal1            = sadtotal.
          pagetotal1           = pagetotal.
          setamt1              = pagetotal1 + cvdtotal1.
          totalbcd1            = totalbcd.
          item_duty            = totalbcd1 + setamt1.
          pagetotal2           = pagetotal1 + cvdtotal1.
          dutypaid1            = dutypaid1 + dutypaid.
          it_beitm-zbcdasstot  = bcdasstot.
          it_beitm-zdutyratcvd = dutyratcvd.
     

    Hi Ali,
    Write IF condition in the script in the correspodant window. Or for that perticular paragram select the check box <b>'No blank lines</b>' in the paragraph format.
    Hope this helps you, reply for queries, Shall post you the updates.
    Regards. 
    Kumar. .

  • How to avoide entry of same material in  line item in same sales order?

    Dear SD Experts,
      In my project client has requirement related to Material in sales order. Client wants " while creating sales order (VA01) that time particular Material  should use one time in the sales order". If  same material used more than one time in item line in the existing sales order  that time system must  give the Error  Massage.
    Kindly suggest me how can I fulfill above requirement. 
    Regards,
    Manzoor Ahmad

    Hi Manzoor Ahmad,
    This is an interesting requirement  and this cannot be achieved through Standard SAP functionality. We can achive this through custom development in Userexit MV45AFZZ with the help of Developer . The logic has to be while creating sales order , you have created line no 10 with "matl no 1234 " and again trying to use the same material  in line no 30 , then the system has to check all the line items that are created before the line no 30 . This same logic need to be applied for Tcode VA02  also.
    Please post the  the solution once implemented.
    Thanks and regards
    Veera

Maybe you are looking for