Text comming many times

Hi,
I have Header text in function SD_SALESDOCUMENT_CREATE and it is comming many times based on number of line items. How can I make this come only once.
Thanks,
Neelu.
      DESCRIBE TABLE gt2_zprice LINES lv_lines.
      IF lv_lines = 1.
        LOOP AT gt4_zprice INTO gs_zprice1.
          AT NEW kunnr.
            MOVE 'Y' TO lv_flg.
          ENDAT.
          IF lv_flg EQ 'Y'.
            PERFORM headerdata.
            CLEAR lv_flg.
          ENDIF.
          PERFORM itemdata.
          APPEND gs_zprice1 TO gt3_zprice.
        ENDLOOP.
        PERFORM call_function.
        PERFORM update_pricetable.
        PERFORM errorcheckandcommit.
        PERFORM displaydata.
        CLEAR chbox.
        CLEAR lv_lines.
      ELSE.
        REFRESH gt2_zprice.
        CLEAR chbox.
        EXIT.
      ENDIF.
  ENDCASE.
*&      Form  headerdata
*       text
*  -->  p1        text
*  <--  p2        text
FORM headerdata.
* header data
* Sales document type
  header-doc_type = gs_zprice1-auart.
  headerx-doc_type = 'X'.
* Sales organization
  header-sales_org = gs_zprice1-vkorg.
  headerx-sales_org = 'X'.
* Distribution channel
  header-distr_chan  = gs_zprice1-vtweg.
  headerx-distr_chan = 'X'.
* Division
  header-division = gs_zprice1-spart.
  headerx-division = 'X'.
  header-purch_no_c = gs_zprice1-bstkd.
  headerx-purch_no_c = 'X'.
  header-ord_reason = gs_zprice1-augru.
  headerx-ord_reason = 'X'.
*  header-ref_doc = gs_zprice1-xblnr.
*  headerx-ref_doc = 'X'.
  headerx-updateflag = 'I'.
ENDFORM.                    " headerdata
*&      Form  itemdata
*       text
*  -->  p1        text
*  <--  p2        text
FORM itemdata.
* Partner data
* Sold to
  partner-partn_role = 'AG'.
  partner-partn_numb = gs_zprice1-kunnr.
  APPEND partner.
* ITEM DATA
  itemx-updateflag = 'I'.
* Line item number.
  item-itm_number = lv_itemno.
  itemx-itm_number = 'X'.
* Material
  item-material = gs_zprice1-matnr.
  itemx-material = 'X'.
* Plant
  item-plant    = gs_zprice1-werks.
  itemx-plant   = 'X'.
* Quantity
  item-target_qty = gs_zprice1-eohqty.
  itemx-target_qty = 'X'.
  APPEND item.
  APPEND itemx.
*Fill schedule lines
  lt_schedules_in-itm_number = lv_itemno.
  lt_schedules_in-sched_line = '0001'.
  lt_schedules_in-req_qty    = gs_zprice1-eohqty.
  APPEND lt_schedules_in.
*Fill schedule line flags
  lt_schedules_inx-itm_number  = lv_itemno.
  lt_schedules_inx-sched_line  = '0001'.
  lt_schedules_inx-updateflag  = 'I'.
  lt_schedules_inx-req_qty     = 'X'.
  APPEND lt_schedules_inx.
*Conditions
  lv_pprice = gs_zprice1-sprice - gs_zprice1-eprice.
  conditions1-itm_number  = lv_itemno.
  conditions1-cond_type   = 'ZCPP'.
  conditions1-cond_value  = lv_pprice.
  conditions1-currency    = 'USD'.
  conditions1-cond_unit   = 'EA'.
  conditions1-cond_p_unt = 1.
  APPEND conditions1.
*Texts
    order_text-itm_number  = '000000'.
    order_text-text_id = '0001'.
    order_text-langu = sy-langu.
    order_text-text_line = gs_zprice1-xblnr.
    APPEND order_text.
  lv_itemno = lv_itemno + 10.
ENDFORM.                    " itemdata

Hi Neelu,
Can you paste your whole code.
and why you are checking this
IF lv_lines = 1.
Regards,
Atish

Similar Messages

Maybe you are looking for