Count field using fields at another tables

Hi. I have invoice and deliveries:
Create table Invoices (
InvoiceID number primary key,
OrganizationName varchar2(30),
InvoiceDate date,
TotalPrice money
Create table Deliveries (
InvoiceID number,
ProductName varchar2(30),
ProductPrice money,
Amount number,
Second table has information about products with in invoice.
I would like not to count all Products:
Select InvoiseID ,COUNT(ProductPrice*Amount) as "Total invoice Price"
From somewhere
Where something has the same InvoiceID
Group by invoiceID
I want it to count automaticlly and put it in TotalPrice field. How can I do it?

some notes...
Create or replace Procedure CountInvoiceSums IS
begin
cursor c1 is
select *
from Invoices;
records number;
records=(select COUNT(*) from Invoices);
invoiceN varchar2(5);
for j 1..records
LOOP
--get invoice name:
invoiceN=
--change invoice Total price for
(select SUM(ProductPrice*Amount)
from Products p
where p.INVOICENAME=invoiceN)
END LOOP
end;
--=========================================
Create or replace trigger InvoiceTotalPrice
after update of ProductPrice on Products
call CountInvoiceSums;
Am I on the right way? If I am, I have 2 questions:
1)how to edit field in j record? delete old the add new?
2)how to get field in j record?
Thanks in advance.
P.S. please just advice not make for me, i want to lean it myself.

Similar Messages

  • Search help from one field used to populate another on subscreen.

    I have a subscreen with 2 fields;  Plant & Batch.   Search help MCH1F displays batches for plants.  When a batch for a plant is selected in the search help for the batch field, I want to populate the plant field in addition to the batch.  The batch number comes back from the search help selection, but I need to get the plant associated with that batch just selected and populate the subscreen plant field.  SET/GET doesn't work either in the screen field setup or abap flow logic.   Any tips would be appreciated.  Thanks.

    Hi Kurt,
    i think that way its not possible but the closest way is
    i HAVE TWO TABLES
    ZPHY
    ZPROC
    I HAVE SCREEN  IN WHICH I HAVE TO GET VALUE FOR  PHY BASED ON ID.
    AND FOR OTHER FIELD IN THE SCREEN I HAVE PROC BASED ON THE ID I USED TO GET PHY AND  FOR THE SAME ID I AHVE MULTIPLE PROC AND I HAVE SELECT ONE OF THOSE , HERE WHEN YOU PRESS F4 IT WILL GIVE ALL THE PROC ASSOCIATED TO
    ID THATI USED IN THE SELECTION OF PHY.
    AND I THINK YOURS IS THE SAME CASE RIGHT.
    FIRST GET
    process on value-request.
    FIELD zabc-def MODULE VALUE_REQUEST_PHYACT.
    FIELD zabc-proc MODULE VALUE_REQUEST_PROC.
    MODULE VALUE_REQUEST_PHYACT INPUT.
    DATA: progname TYPE sy-repid,
          dynnum   TYPE sy-dynnr.
    CLEAR zabc.
    CLEAR : zabc-def, zabc-id, zabc-proc,
    zabc-ZSHECPROC.
    CLEAR FINAL.
    CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'
      EXPORTING
        TABNAME                   = 'ZPHY'
        FIELDNAME                 = 'def'
        SEARCHHELP                = 'ZPHY'
      SHLPPARAM                 = ' '
        DYNPPROG                  = PROGNAME
        DYNPNR                    = DYNNUM
      DYNPROFIELD               = ' '
      STEPL                     = 0
      VALUE                     = ' '
      MULTIPLE_CHOICE           = ' '
      DISPLAY                   = ' '
      SUPPRESS_RECORDLIST       = ' '
      CALLBACK_PROGRAM          = ' '
      CALLBACK_FORM             = ' '
      TABLES
        RETURN_TAB                = IT_RETURN4
    EXCEPTIONS
      FIELD_NOT_FOUND           = 1
      NO_HELP_FOR_FIELD         = 2
      INCONSISTENT_HELP         = 3
      NO_VALUES_FOUND           = 4
      OTHERS                    = 5
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    read table it_return4 index 1.
    zabc-def = it_return4-fieldval.
    select single id into zabc-id FROM ZPHY
                          WHERE def = zabc-def.
    FINAL-def = zabc-def.
    FINAL-id = zabc-id.
    HERE BASED ON ID I AM RETRIEVING  DEF FIELD ,THIS IS FROM SEARCH HELP USING SE11.
    AND FOR THE SAME ID I HAVE TO GET PROC FIELD FROM ANOTHER TABLE
    ENDMODULE.                 " VALUE_REQUEST_PHYACT  INPUT
    MODULE VALUE_REQUEST_PROC INPUT.
    DATA : SERVICE LIKE zabc-id.
    select single id into SERVICE FROM ZPHY
                          WHERE def = zabc-def.
    SELECT * INTO TABLE ITAB_TEST4 FROM ZPROC
                      WHERE id = SERVICE.
    CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
      EXPORTING
      DDIC_STRUCTURE         = ' '
        RETFIELD               = 'proc'
      PVALKEY                = ' '
      DYNPPROG               = ' '
      DYNPNR                 = ' '
      DYNPROFIELD            = ' '
      STEPL                  = 0
        WINDOW_TITLE           = 'PROCEDURE'
      VALUE                  = ' '
        VALUE_ORG              = 'S'
      MULTIPLE_CHOICE        = ' '
      DISPLAY                = ' '
      CALLBACK_PROGRAM       = ' '
      CALLBACK_FORM          = ' '
      TABLES
        VALUE_TAB              = ITAB_TEST4
      FIELD_TAB              =
        RETURN_TAB             = IT_RETURN4
      DYNPFLD_MAPPING        =
    EXCEPTIONS
      PARAMETER_ERROR        = 1
      NO_VALUES_FOUND        = 2
      OTHERS                 = 3
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    if sy-subrc = 0.
              clear itab_TEST4.
              read table it_return4 index 1.
                   zabc-proc = it_return4-fieldval.
         read table itab_TEST4 with key id = itab_details-def
             itab_zMOR-def = itab_details-def.
             itab_zMOR-zzfname  = itab_details-zzfname.
            endif.
    SELECT SINGLE ZSHECPROC INTO zabc-ZSHECPROC FROM ZPROC
    WHERE proc = zabc-proc.
    FINAL-proc = zabc-proc.
    final-zshecproc = zabc-zshecproc.
    *********AGAIN THIS IS NOT THE SEARCH HELP FROM SE11
    ENDMODULE.                 " VALUE_REQUEST_PROC  INPUT
    hope this helps
    Thanks

  • Modify DB by single field using Field Symbol

    Hi,
      please help me ,actually i have not use the field symbol in any object. i have one requirement ,i have to modify the DB by field STATUS using Field symbol ,
    I am sending u my code so please help me how can i modify DB using field symbol..
              gw_msg3_status1   = k_status1 .
              LOOP AT gi_msg3 INTO gs_msg3.
                gs_msg3-status  = gw_msg3_status1 .
                gs_msg3-issue   = lw_issuno.
           MODIFY gi_msg3 FROM gs_msg3 TRANSPORTING status.
                MODIFY gi_msg3 INDEX sy-tabix FROM gs_msg3 TRANSPORTING issue status.
              ENDLOOP.
    Thanks & Regards,
    Meenakshi

    perform dboperation_table using 'SET' 'BIRTHDT' '=' <fs>.
        perform dboperation_table using 'WHERE' 'PARTNER' '='  <fs>
        perform dboperation_update using 'BUT000'.
    form dboperation_table
    using p_type
          p_var1
          p_var2
          p_var3.
      data: t_l type cmst_str_data.
      data: d_cx_root            type ref to cx_root,
            d_text               type string.
      try.
          clear t_l.
          if p_var3 is not initial.
            t_l = p_var3.
            condense t_l.
            concatenate '''' t_l '''' into t_l.
          endif.
          concatenate p_var1 p_var2 t_l into t_l
          separated by space.
          case p_type.
            when 'SET'.   append t_l to g_s_t.
            when 'WHERE'. append t_l to g_w_t.
          endcase.
        catch cx_root into d_cx_root.
          d_text = d_cx_root->get_text( ).
          message a398(00) with  d_text.
      endtry.
    endform.                    "DBOPERATION_table
    form dboperation_update
    using  p_tabname type zdboperation-tabname.
      data: tabname type bus_table.
      data: d_cx_root            type ref to cx_root,
            d_text               type string.
      try.
          tabname-tabname = p_tabname.
          call function 'ZDBOPERATION_UPDATE'
            in update task
            exporting
              tabname     = tabname
            tables
              where_table = g_w_t
              set_table   = g_s_t.
        catch cx_root into d_cx_root.
          d_text = d_cx_root->get_text( ).
          message a398(00) with  d_text.
      endtry.
    endform.                    "DBOPERATION_update
    Hope it will help you.
    Regards,
    Madan.

  • Updating a field from info from another table

    I am trying to update a field in a table by the data from another lookup table. These tables have to be linked by two columns, not just one. It seems like I have to use a sub query to extract data from the lookup table. I am unable to get a correct syntax for the SQL statements.
    Does anyone has any ideas??

    UPDATE table_B t2 SET t2.col1 = (SELECT t1.col1 FROM table_A t1 WHERE t1.col2 = t2.col2 AND t1.col3 = t2.col3);
    table_B is the table whose col1 needs to be updated with col1 of table_A. The join conditions are two (with col2 and col3)
    Hope this is what you are looking for!!
    Cheers
    r@m@

  • Transfer a binary file stored in a table field in oracle to another table different schema in oracle

    I would like to know if it is possible to use ssis to transfer a binary file of a datatype of long raw in a field in one table in oracle to a new table in a different schema of a datatype blob in oracle? The binary file is a Crystal reports executable
    which is used in a application that I support. I are trying to consolidate data fields over many schemas into one main schema to simplify the support issues.

    Hi r_peterser,
    SQL Server Integration Services maps DT_IMAGE data type to LONG RAW and BLOB in Oracle. So, you can directly use an OLE DB Source or Oracle Source adapter to extract the LONG RAW column from the Oracle database, and then load the data to the BLOB column
    of the Oracle table through an OLE DB Destination or Oracle Destination adapter.
    Reference:
    http://technet.microsoft.com/en-us/library/ms141036.aspx 
    Regards,
    Mike Yin
    If you have any feedback on our support, please click
    here
    Mike Yin
    TechNet Community Support

  • How to display the fields using field catelog in ALV Report

    Hi,
    I have rquiremrnt in ALV report.I would need to add the new fileld in the ALV output screen.I have added the field but its appearing in the layout set but not directly displaying in the output screen.
    I have written the below logic for field catelog.
    CLEAR wa_fieldcatalog.
      wa_fieldcatalog-fieldname   = 'LOGGR'.
      wa_fieldcatalog-ref_tabname = 'MARC'.
      wa_fieldcatalog-col_pos     = l_pos.
      wa_fieldcatalog-outputlen   = 13.
       wa_fieldcatalog-seltext_s   = 'Log. group'.
      wa_fieldcatalog-seltext_m   = 'Logistics group'.
      wa_fieldcatalog-seltext_l   = 'Log. handling group'.
       wa_fieldcatalog-reptext_ddic = 'Log. handling group'.
      APPEND wa_fieldcatalog TO it_fieldcatalog.
      l_pos = l_pos + 1.
    Please let me know why the added field was not displaying automaticaly in the output screen.
    Regards,
    Reddy

    hi,
             try this
    clear wa_fieldcatalog.
    wa_fieldcat-tabname       = 'ITAB' ( give the internal table which has the field LOGGR)
    wa_fieldcatalog-fieldname = 'LOGGR'.
    wa_fieldcatalog-ref_tabname = 'MARC'.
    wa_fieldcatalog-col_pos = l_pos.
    wa_fieldcatalog-outputlen = 13.
    wa_fieldcatalog-seltext_s = 'Log. group'.
    wa_fieldcatalog-seltext_m = 'Logistics group'.
    wa_fieldcatalog-seltext_l = 'Log. handling group'.
    wa_fieldcatalog-reptext_ddic = 'Log. handling group'.
    APPEND wa_fieldcatalog TO it_fieldcatalog.
    l_pos = l_pos + 1.

  • To update field using BAPI

    Hello experts,
    I have added one field using append structure in table MARC. I want to updated this field usnign BAPI_MATERIAL_SAVEDATA. can anybody tell me the procedure to do that?
    Thanks in advance.

    Hello,
    Check the documentation of the function module BAPI_MATERIAL_SAVEDATA. There is a parameter in the FM - EXTENSIONIN where in new fields added to the table can be used to be updated.
    The documentation of that parameters tells you how this can be achieved.
    Create 2 structures of the type BAPI_TE_MARA and BAPI_TE_MARAX
    Now assign the field structure of the workarea of type BAPIPAREX. Assume gs_extensionin is of type BAPIPAREX and gs_bapi_te_mara is of type BAPI_TE_MARA (this should have the fields that have been added in the table)
    gs_extensionin-structure = 'BAPI_TE_MARA'.
    gs_extensionin-valuepart+0(18) = gs_bapi_te_mara-matnr.
    gs_extensionin-valuepart+18(length of the new field) = ga_bapi_te_mara-<new field added in the structure>.
    append gs_extensionin to gt_extensionin.
    gs_extensioninx-structure = 'BAPI_TE_MARAX'.
    gs_extensioninx-valuepart+0(18) = gs_bapi_te_mara-matnr.
    gs_extensioninx-valuepart+18(1) = 'X'..
    append gs_extensioninx to gt_extensioninx.
    Now pass these tables gt_extensionin and gt_extensionx to the parameters extensionin and extensioninx of the function module BAPI_MATERIAL_SAVEDATA.
    Also try searching SDN using Extending BAPI's
    Hope this will help in solving your query.
    Regards,
    Sachin

  • How to report texts - using infoset or another way?

    I have a requirement to report long text fields in EHS incidents - such as an incident "Description of Events" and "Immedaite Actions". I have tried creating an infoset with the incident table EHHSSD_INC_BINFA joined to /BOBF/D_TXCCON, with an additional field to extract part of the TEXT field, but am getting the error ""/BOBF/D_TXCCON" must be a flat structure. You cannot use internal tables, strings, references, or structures as components. -".
    How can I report on this TEXT field using infoset or another method?
    Thank you,
    Steve

    Hi Steve,
    Just wanted to check if you are able to resolve this issue? i am in the same boat and wanted to check if you have any solution.
    Thanks

  • How to populate one internal table from another using field symbols

    Hi Gurus,
      I have a problem. I have to populate one internal table (sructure t_otput) from another internal table (sructure t_from) using field symbol.
    Structure for from table.
    types: begin of t_from,
             year(4) type c,
             ww(2) type c,
             site type marc-werks,
             demand type i,
           end of t_from.
    Structure for output table.
    types: begin of t_display,
             title(30),
             WW1(10),
             WW2(10),
             WW3(10),
           end of t_display.
    The from table looks like this:
    Year | WW | Site | Demand
    2005 | 1  | OR1  | 12.00
    2005 | 2  | OR1  | 13.00
    2005 | 3  | OR1  | 14.00
    The display table which has to be populated should look like this:
    Title  | WW1   | WW2   | WW3
    OR1    |       |       |
    Demand | 12.00 | 13.00 | 14.00
    How to populate display table using field symbol?
    Please give code snippets
    Thanks,
    Gopal

    Gopal,
    Here is the code, however I am not vary clear about the ORG1 and Demand display that you have shown in the display. I am sure with this code it should not be a big deal to tweak in whatever manner you want.
    TABLES : marc.
    TYPES: BEGIN OF type_display,
    title(30),
    ww1(10),
    ww2(10),
    ww3(10),
    END OF type_display.
    TYPES: BEGIN OF type_from,
    year(4) TYPE c,
    ww(2) TYPE c,
    site TYPE marc-werks,
    demand TYPE i,
    END OF type_from.
    data : t_from type table of type_from,
           t_display type table of type_display.
    field-symbols : <fs_from> type type_from,
                    <fs_display> type type_display.
    data : wa_from type type_From,
           wa_display type type_display.
    wa_from-year = '2005'.
    wa_from-ww   = '1'.
    wa_from-site = 'OR1'.
    wa_from-demand = '12.00'.
    insert wa_from  into table t_from.
    wa_from-year = '2005'.
    wa_from-ww   = '2'.
    wa_from-site = 'OR1'.
    wa_from-demand = '13.00'.
    insert wa_from  into table t_from.
    wa_from-year = '2005'.
    wa_from-ww   = '3'.
    wa_from-site = 'OR1'.
    wa_from-demand = '14.00'.
    insert wa_from  into table t_from.
    data : variable(3) type c.
    field-symbols : <fs_any> type any.
    break-point.
    Loop at t_from assigning <fs_from>.
    variable = 'WW'.
    wa_display-title = <fs_from>-site.
    concatenate variable <fs_from>-ww into variable.
    assign component variable of structure wa_display to <fs_any>.
    <fs_any> = <fs_from>-demand.
    endloop.
    append wa_display to t_display.
    clear wa_display.
    loop at t_display assigning <Fs_display>.
      write :/ <fs_display>.
    endloop.
    Note : Please award points if this helps you.
    Regards,
    Ravi

  • Data Maintain in a table form another table....using field symbols.

    Hi,
    I am using dynamic table concepts.I am using field symbols.I need to maintain two tables of similar structure.
    when i append data it will enter into both tables.when i unassign first table and reassign it ,i am getting back that data again into first table ..how to slve this problem.i need to start first table as fresh table and second table contain copy of the first table.

    Hi,
    maybe you should clarify your problem a bit more by pasting some code and try to explain it a bit more in detail.
    Roy

  • Is it possible to write a result of query to a CLOB field in another table

    Hi all,
    I have a table with 50 columns which will ideally have around 250,000 rows. I want to select all the rows from this table and insert the result in to another
    table's CLOB or BLOB column. ( I think CLOB is preferred for strings !!)
    f.i
    Table1 : SELECT ID, COL1||','||COL2||','||COL3||','||COL4||','||COL5 FROM TF_TEMPREP
    ORDER BY COL1
    will have the output
    A001, 1,ABN LAYOUT,01-APR-11,30-APR-11,REMARK1
    A001, 2,CTS ,01-APR-11,10-APR-11,REMARK2
    A001, 3,BTS,01-APR-11,20-APR-11,REMARK3
    A001, 4,CWWS,01-JAN-11,31-JAN-11,REMARK4
    A001, 5,ZYNC,01-MAR-11,31-MAR-11,REMARK5
    I would like to store these rows into another table (TF_TEMPREP_OUTPUT) CLOB/BLOB column ,
    so the table TF_TEMPREP_OUTPUT will have one row with all the rows from TF_TEMPREP in the CLOB/BLOB column.
    TF_TEMPREP_OUTPUT will have column OUTPUTID (VARCHAR2) , OUTPUTDATA (CLOB DATATYPE)
    Will this be possible !!.
    Thanks in advance
    Regards
    Murali

    Hi all
    Thanks for your reply,
    The reason we would like to store the data in a CLOB file is that,
    Currently we are fetching the data from the table TF_TEMPREP and the recordset is passed into a function and writing the ouput to a CSV file in the local drive using the VB (front end application). once the process is completed, the temporary table will be deleted. this is used only for printing purpose.
    we are using the VB function
    Public Function RecordsetToCSV(rsData As ADODB.Recordset, pFileSeparator As String, Optional ShowColumnNames As Boolean = True, Optional NULLStr As String = "") As String
    Dim k As Long
    Dim RetStr As String
    On Error GoTo Errh
    If ShowColumnNames Then
    For k = 0 To rsData.Fields.Count - 1
    RetStr = RetStr & pFileSeparator & """" & rsData.Fields(k).Name & """"
    Next k
    RetStr = Mid(RetStr, 2) & vbNewLine
    End If
    rsData.MoveFirst
    RetStr = RetStr & """" & rsData.GetString(adClipString, -1, """" & pFileSeparator & """", """" & vbNewLine & """", NULLStr)
    RetStr = Left(RetStr, Len(RetStr) - 3)
    RecordsetToCSV = RetStr
    Exit Function
    Errh:
    RecordsetToCSV = ""
    Exit Function
    End Function
    But in this operation, as the number of records is more the system often throws out with the message "Not enough storage is available to complete this operation.". The Local HD is having around 50GB of free space. when we have less number of records (say around 30-40K), the above process works perfectly.
    Storing the File in the database server will be an issue, as the database server will be in a different location and it will not be possible/advisable to access the
    local directory thru mapped directory in the database server.
    our plan was if the data is available in a clob field, then we could try to read the clob and write to a file in the local directory thru our VB application itself. Not sure, will this also gives a same error as it was giving when reading from the table?.
    Hope I have clarified what we are aiming at.
    Regards
    Murali

  • How to Read data from a table which is defined as a field in another table

    Hi
    Iam working with FM: 'CUCB_GET_CONFIGURATION'
    <b>  Import parameter configuration as a table.</b>
      <u>but configuration has another table as a field.</u>
    i want to read the inner table fields.
    how can i read the table which is defined as field in configuration table.
    Please try to give me a solution.
    can i have the declartions too....
    Thanks,
    sri

    Hi jonnakuti,
    1. simple
    2.
    DATA : CONFG      TYPE IBCO2_INSTANCE_TAB2.
    <b>DATA : WA TYPE LINE OF IBCO2_INSTANCE_TAB2.</b>
    3. just copy paste
    4.
    report abc.
    TYPE-POOLS : IBCO2.
    DATA : INSTANCE     TYPE     CUIB_CUOBJ.
    DATA : CONFG      TYPE IBCO2_INSTANCE_TAB2.
    DATA : WA TYPE LINE OF IBCO2_INSTANCE_TAB2.
    CALL FUNCTION 'CUCB_GET_CONFIGURATION'
      EXPORTING
        INSTANCE                           = INSTANCE
      IS_BUSINESS_OBJECT                 =
      IV_MOMENT                          =
      IV_WITH_DB_INSTANCE                =
    IMPORTING
      IBASE                              =
       CONFIGURATION                      = CONFG
      EO_CBASE_REF                       =
    EXCEPTIONS
       INVALID_INPUT                      = 1
       INVALID_INSTANCE                   = 2
       INSTANCE_IS_A_CLASSIFICATION       = 3
       OTHERS                             = 4
    read like this
    LOOP AT CONFG INTO WA.
    ENDLOOP.
    regards,
    amit m.

  • Error while linking user defined table to user defined field using vb6.0

    Hi,
    I am creating a userdefined field on a SAPB1 table(PDN1) using vb 6.0
    I am trying to link this field to a user defined table.
    When i do that i get the following error:
    "The field 'Related table' should consist of 8 alphanumeric chracters with no valid or default values"
    When i try to do the same thing from SAPB1(not using code) there is no such problem.
    My vb code is as follows:
    Set oUserFieldsMD = oCmp.GetBusinessObject(oUserFields)
    oUserFieldsMD.TableName = "PDN1"
    oUserFieldsMD.Name = "OB_Locn"
    oUserFieldsMD.Description = "WH Location"
    oUserFieldsMD.Type = db_Alpha
    oUserFieldsMD.EditSize = 30
    lRetCode = oUserFieldsMD.Add
    If lRetCode <> 0 Then
        oCmp.GetLastError lErrCode, sErrMsg
        MsgBox sErrMsg
        GoTo Err_
    End If
    If Not oUserFieldsMD.GetByKey("PDN1", 0) Then
        MsgBox "Error"
        GoTo Err_
    End If
    oUserFieldsMD.LinkedTable = "OB_TEST"
    lRetCode = oUserFieldsMD.Update
    Your help will be much appreciated.
    Thanks.

    Great Sébastien!
    Looks like we could not survive here one day without your contribution
    Best regards,
    Frank
    PS: For readers of this thread who don't understand why
    EditSize
    must be "8":
    This is the size of the
    Code
    field in the user-defined table to which the new field OB_Locn (in the DB it will be U_OB_Locn) is linked to...
    So, it should be preferrably of the same size.

  • How to update field values in a database table using module pool prg?

    hi
    how to update field values in a database table using module pool prg?
    we created a customized table, and we put 2 push buttons in screen painter update and display.
    but update is not working?
    data is enter into screen fields and to internal table, but it is not updated in database table.
    thanks in adv
    vidya

    HI,
    we already used the update statement. but its not working.
    plz check this.
    *& Module Pool       ZCUST_CALL_REC
    PROGRAM  ZCUST_CALL_REC.
    TABLES: ZCUST_CALL_REC,ZREMARKS.
    data:  v_kun_low like ZCUST_CALL_REC-kunnr ,
           v_kun_high like ZCUST_CALL_REC-kunnr,
           v_bud_low like ZCUST_CALL_REC-budat,
           v_bud_high like ZCUST_CALL_REC-budat.
    ranges r_kunnr for ZCUST_CALL_REC-kunnr  .
    ranges r_budat for zcust_call_rec-budat.
    DATA: ITAB TYPE STANDARD TABLE OF ZCUST_CALL_REC WITH HEADER LINE,
          JTAB TYPE STANDARD TABLE OF ZREMARKS WITH HEADER LINE.
    *data:begin of itab occurs 0,
        MANDT LIKE ZCUST_CALL_REC-MANDT,
        kunnr like ZCUST_CALL_REC-kunnr,
        budat like ZCUST_CALL_REC-budat,
        code like ZCUST_CALL_REC-code,
        remarks like ZCUST_CALL_REC-remarks,
        end of itab.
    *data:begin of Jtab occurs 0,
        MANDT LIKE ZCUST_CALL_REC-MANDT,
        kunnr like ZCUST_CALL_REC-kunnr,
        budat like ZCUST_CALL_REC-budat,
        code like ZCUST_CALL_REC-code,
        remarks like ZCUST_CALL_REC-remarks,
        end of Jtab.
    CONTROLS:vcontrol TYPE TABLEVIEW USING SCREEN '9001'.
    CONTROLS:vcontrol1 TYPE TABLEVIEW USING SCREEN '9002'.
    *start-of-selection.
    *&      Module  USER_COMMAND_9000  INPUT
          text
    MODULE USER_COMMAND_9000 INPUT.
    CASE sy-ucomm.
    WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.
    SET SCREEN 0.
    LEAVE SCREEN.
    CLEAR sy-ucomm.
    WHEN 'ENQUIRY'.
    perform multiple_selection.
    perform append_CUSTOMER_code.
    PERFORM SELECT_DATA.
    call screen '9001'.
    WHEN 'UPDATE'.
          perform append_CUSTOMER_code.
          PERFORM SELECT_DATA.
          call screen '9002'.
          perform update on commit.
    WHEN 'DELETE'.
          perform append_CUSTOMER_code.
          PERFORM SELECT_DATA.
          call screen '9002'.
    ENDCASE.
    ENDMODULE.                 " USER_COMMAND_9000  INPUT
    *&      Module  STATUS_9000  OUTPUT
          text
    MODULE STATUS_9000 OUTPUT.
      SET PF-STATUS 'ZCUSTOMER'.
    SET TITLEBAR 'xxx'.
    ENDMODULE.                 " STATUS_9000  OUTPUT
    *&      Module  USER_COMMAND_9001  INPUT
          text
    MODULE USER_COMMAND_9001 INPUT.
    CASE sy-ucomm.
    WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.
    SET SCREEN 0.
    LEAVE SCREEN.
    CLEAR sy-ucomm.
    endcase.
    ENDMODULE.                 " USER_COMMAND_9001  INPUT
    *&      Module  STATUS_9001  OUTPUT
          text
    MODULE STATUS_9001 OUTPUT.
      SET PF-STATUS 'ZCUSTOMER'.
    SET TITLEBAR 'xxx'.
    move itab-MANDT   to zcust_call_rec-MANDT.
    move itab-kunnr   to zcust_call_rec-kunnr.
    move itab-budat   to zcust_call_rec-budat.
    move itab-code    to zcust_call_rec-code.
    move itab-remarks to zcust_call_rec-remarks.
    vcontrol-lines = sy-dbcnt.
    ENDMODULE.                 " STATUS_9001  OUTPUT
    *&      Module  USER_COMMAND_9002  INPUT
          text
    module  USER_COMMAND_9002 input.
    CASE sy-ucomm.
       WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.
          SET SCREEN 0.
          LEAVE SCREEN.
          CLEAR sy-ucomm.
       WHEN 'UPDATE'.
             perform move_data.
         UPDATE ZCUST_CALL_REC FROM TABLE ITAB.
            IF SY-SUBRC = 0.
               MESSAGE I000(0) WITH 'RECORDS ARE UPDATED'.
             ELSE.
               MESSAGE E001(0) WITH 'RECORDS ARE NOT UPDATED'.
            ENDIF.
      WHEN 'DELETE'.
             perform move_data.
             DELETE ZCUST_CALL_REC FROM TABLE ITAB.
              IF SY-SUBRC = 0.
               MESSAGE I000(0) WITH 'RECORDS ARE DELETED'.
             ELSE.
               MESSAGE E001(0) WITH 'RECORDS ARE NOT DELETED'.
            ENDIF.
    endcase.
    endmodule.                 " USER_COMMAND_9002  INPUT
    *&      Module  STATUS_9002  OUTPUT
          text
    module STATUS_9002 output.
      SET PF-STATUS 'ZCUSTOMER1'.
    SET TITLEBAR 'xxx'.
    endmodule.                 " STATUS_9002  OUTPUT
    *&      Module  update_table  OUTPUT
          text
    module update_table output.
         move itab-MANDT   to zcust_call_rec-MANDT.
         move itab-kunnr   to zcust_call_rec-kunnr.
         move itab-budat   to zcust_call_rec-budat.
         move itab-code    to zcust_call_rec-code.
         move itab-remarks to zcust_call_rec-remarks.
    vcontrol-lines = sy-dbcnt.
    endmodule.                 " update_table  OUTPUT
    ***Selection Data
    FORM SELECT_DATA.
    SELECT  mandt kunnr budat code remarks  FROM zcust_call_rec INTO
                            table itab
                             WHERE kunnr IN r_kunnr AND BUDAT IN R_BUDAT.
    ENDFORM.
    ****append vendor code
    FORM APPEND_CUSTOMER_CODE.
    clear r_kunnr.
    clear itab.
    clear r_budat.
    refresh r_kunnr.
    refresh itab.
    refresh r_kunnr.
    IF r_kunnr  IS INITIAL
                  AND NOT v_kun_low IS INITIAL
                   AND NOT v_kun_high IS INITIAL.
                        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
                                    EXPORTING
                                       input         = v_kun_low
                                    IMPORTING
                                       OUTPUT        = r_kunnr-low.
                       CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
                                  EXPORTING
                                      input         = v_kun_high
                                  IMPORTING
                                      OUTPUT        = r_kunnr-high.
                     r_kunnr-option = 'BT'.
                     r_kunnr-sign = 'I'.
                     append r_kunnr.
       PERFORM V_BUDAT.
    ELSEIF r_kunnr  IS INITIAL
                  AND NOT v_kun_low IS INITIAL
                   AND  v_kun_high IS INITIAL.
                        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
                                    EXPORTING
                                       input         = v_kun_low
                                    IMPORTING
                                       OUTPUT        = r_kunnr-low.
                    r_kunnr-SIGN = 'I'.
                    r_kunnr-OPTION = 'EQ'.
                    APPEND r_kunnr.
       PERFORM V_BUDAT.
    ELSEIF r_kunnr IS INITIAL
                  AND  v_kun_low IS INITIAL
                   AND NOT v_kun_high IS INITIAL.
                        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
                                    EXPORTING
                                       input         = v_kun_low
                                    IMPORTING
                                       OUTPUT        = r_kunnr-low.
                    r_kunnr-SIGN = 'I'.
                    r_kunnr-OPTION = 'EQ'.
                    APPEND r_kunnr.
          PERFORM V_BUDAT.
    ELSEIF r_kunnr IS INITIAL
                  AND  v_kun_low IS INITIAL
                   AND  v_kun_high IS INITIAL.
                        IF SY-SUBRC = 0.
                             MESSAGE I003(0) WITH 'ENTER CUSTOMER NUMBER'.
                              CALL SCREEN '9000'.
                        ENDIF.
    PERFORM V_BUDAT.
    ENDIF.
    ENDFORM.
    FORM V_BUDAT.
    IF  R_BUDAT IS INITIAL
                   AND NOT v_BUD_low IS INITIAL
                   AND NOT v_BUD_high IS INITIAL.
                     r_budat-low = v_bud_low.
                     r_budat-high = v_bud_high.
                     r_budat-option = 'BT'.
                     r_budat-sign = 'I'.
                     append r_budat.
             ELSEIF  R_BUDAT IS INITIAL
                   AND NOT v_BUD_low IS INITIAL
                   AND  v_BUD_high IS INITIAL.
                     r_budat-low = v_bud_low.
                     r_budat-high = v_bud_high.
                     r_budat-option = 'EQ'.
                     r_budat-sign = 'I'.
                     append r_budat.
             ELSEIF  R_BUDAT IS INITIAL
                   AND  v_BUD_low IS INITIAL
                   AND NOT v_BUD_high IS INITIAL.
                     r_budat-HIGH = v_bud_HIGH.
                     r_budat-option = 'EQ'.
                     r_budat-sign = 'I'.
                     append r_budat.
              ELSEIF  R_BUDAT IS INITIAL
                   AND  v_BUD_low IS INITIAL
                   AND  v_BUD_high IS INITIAL.
                   IF SY-SUBRC = 0.
                       MESSAGE I002(0) WITH 'ENTER POSTING DATE'.
                      CALL SCREEN '9000'.
                    r_budat-low = ''.
                    r_budat-option = ''.
                    r_budat-sign = ''.
                    ENDIF.
            ENDIF.
    ENDFORM.
    *&      Form  update
          text
    -->  p1        text
    <--  p2        text
    form update .
    commit work.
    endform.                    " update
    *&      Form  move_data
          text
    -->  p1        text
    <--  p2        text
    form move_data .
       clear itab.
      refresh itab.
           move-corresponding  zcust_call_rec to itab.
           MOVE ZCUST_CALL_REC-MANDT   TO ITAB-MANDT.
           MOVE ZCUST_CALL_REC-KUNNR   TO ITAB-KUNNR.
           MOVE ZCUST_CALL_REC-BUDAT   TO ITAB-BUDAT.
           MOVE ZCUST_CALL_REC-CODE    TO ITAB-CODE.
           MOVE ZCUST_CALL_REC-REMARKS TO ITAB-REMARKS.
         APPEND ITAB.
         delete itab where kunnr is initial.
    endform.                    " move_data
    thanks in adv
    vidya

  • How to populate field catalogue fields in ALV using  dynamic internal table

    Hi All,
    Please let me know how to populate field catalogue fields in ALV using  dynamic internal table.
    I have created <dyn_table> using code below.
    CALL METHOD cl_alv_table_create=>create_dynamic_table
                     EXPORTING
                       it_fieldcatalog = g_t_ifc
                        it_fieldcatalog = g_t_fieldcat
                     IMPORTING
                        ep_table        = dy_table.
      ASSIGN dy_table->* TO <dyn_table>.
    Create dynamic work area and assign to FS
      CREATE DATA dy_line LIKE LINE OF <dyn_table>.
      ASSIGN dy_line->* TO <dyn_wa>.
    Now this  <dyn_table>  has fields like idoc no.,creation date ,
    segment field 1, segment field 2 etc..Now idoc no.,creation date  are static fields from table EDIDC. And segment field 1, segment field 2 etc are dynamic fields from table EDSAPPL.
    In my  ALV report I am getting the final layout properly but I am unable to move values to corresponding fields in the final layout shown.Please let me know how to populate these fields from different tables.
    I tried this way but its not working.
    SORT g_t_edid4 BY docnum.
      LOOP AT g_t_edidc INTO g_r_edidc.
        READ TABLE g_t_edid4 into g_r_edid4
                         WITH KEY docnum = g_r_edidc-docnum
                                        BINARY SEARCH.
        IF sy-subrc = 0.
          <dyn_wa> =  g_r_edid4-sdata.
         MOVE-CORRESPONDING g_r_edid4 to <dyn_wa>.
       CLEAR g_r_edid4.
        ENDIF.
    MOVE-CORRESPONDING g_r_edidc to <dyn_wa>.
    APPEND <dyn_wa> TO <dyn_table>.

    You have to assign each field to field symbol and then assign the value to that field symbol and asssign that field symbol to workarea field symbol.
    LOOP AT g_t_edidc INTO g_r_edidc.
    READ TABLE g_t_edid4 into g_r_edid4
    WITH KEY docnum = g_r_edidc-docnum
    BINARY SEARCH.
    IF sy-subrc = 0.
    ASSIGN COMPONENT 'SDATA' OF STRUCTURE <DYN_WA> TO <DYN_FLD>.
    <DYN_FLD> = g_r_edid4-sdata.
    " <dyn_wa> = g_r_edid4-sdata.
    " Assign each fields like this.
    " MOVE-CORRESPONDING g_r_edid4 to <dyn_wa>.
    CLEAR g_r_edid4.
    ENDIF.
    " MOVE-CORRESPONDING g_r_edidc to <dyn_wa>.
    APPEND <dyn_wa> TO <dyn_table>.
    Regards,
    Naimesh Patel

Maybe you are looking for

  • Preferences in Sql Datamodeler are not saved

    Hello all, I seem to do something wrong: I would like to change certain preferences, but they SDM does not save their status. As soon as I open the preference menu option again, the preferences are in their previous state. Saving the complete design

  • Value in cusotm subtotal field is not updating in LIS (S) tables

    Hello Experts, All the existing subtotal vlues (provided by SAP) we have consumed based on the pricing procedure's requriement and we have created a new Z subtotal field (like ZZKZWI11) in pricing, it is working fine and the values are getting update

  • How to get Internet Explorer to ask for Open/Save

    For most binary file types, Internet Explorer asks whether you want to open or save the file, and gives you a further choice of skipping that prompt in the future. Nothing I do gives me access to this prompt for PDFs and Adobe Reader. On a computer o

  • Can you generate separate audio tracks from a Multi-Output Instrument?

    Is there a way to use the "export all tracks as audio files" function and have the multi-output assignments generate separate audio tracks? There doesn't appear to be a way to do this. Ideas?

  • Error while adding producer  from registry.

    Got this error when i tryed add one producer from a third party registry. Need reason for this error. java.lang.NullPointerException      at com.bea.wsrp.consumer.registry.find.uddi2.RegistryFinderImpl.findRegistryEntries(RegistryFinderImpl.java:423)