Form table problem

hello everyone, here is a problem I have not found on the
forums anywhere, so thought I try posting instead of searching
everywhere, using mx 2004 on a mac, I have a form in centre column
of my page, I then have a table with columns and rows with my text
fields for name, e-mail and comments, then submit button.
If I click on 'form' at the bottom of the page it highlights
the whole form/table, but, when I save, close and reopen the page
the table has jumped outside the form area, I have cut and pasted
it back in but the same happens each time I reopen the page!
Any ideas gratefully received.

hutch1909 wrote:
> hello everyone, here is a problem I have not found on
the forums anywhere, so
> thought I try posting instead of searching everywhere,
using mx 2004 on a mac,
> I have a form in centre column of my page, I then have a
table with columns and
> rows with my text fields for name, e-mail and comments,
then submit button.
> If I click on 'form' at the bottom of the page it
highlights the whole
> form/table, but, when I save, close and reopen the page
the table has jumped
> outside the form area, I have cut and pasted it back in
but the same happens
> each time I reopen the page!
> Any ideas gratefully received.
I can't replicate the problem, also using MX2004 on a Mac.

Similar Messages

  • Wee inconsistency in region template "Form Table Attributes"

    In the region template definition there is a field for specifying form table attributes. If I specify table attribute(s) they work as expected. If I then add an item type of "Stop and start table" to the region, the custom attributes are not used in the subsequent tables.
    It's a minor thing... perhaps this can be fixed (or has been fixed) in 3.0?

    Atul:
    I dont know what the 'Alternate Source' is
    In the Source section set
    Source value or expression to be the name of the database column that has the URL (company_url)
    Post calculation Computation to be '<a h ref="' || :pxx_company_url || '">' || :pxx_company_url || '</a>'; where pxx_company_url is the page-item name.
    I have specified 'h ref' instead of 'href' so that the forum software doesnt mess up the post.
    Varad

  • How does "Forms Table Test" work?

    Hey guys,
    I want to use a "forms table test" on the order management lines form, but it doesn't show any reaction.
    In which forms do I use table forms test?
    best regards
    dewi

    Very simple. This table existed in Oracle Version 3 and was used prior to PL/SQL for performing computations. The dummy column is just that. I always returns one row, one column if you select from it.
    Now: DON'T DROP THIS TABLE!!!!!! I decided to see what would happen I did drop the table. Ever hear of INSTANCE CRASH? The Oracle Kernel uses this table Internally for consistency purposes. Shame on Oracle for saying in Version 6 that this table is no longer needed. Also, if your application does a select <sequence name>.nextval from DUAL, change your code as you'll see LOTS of excessive IOs from using this table.

  • Autonomous Trigger / Mutating Table Problem

    We have a specific problem in one of our applications being developed where by the database needs to enforce a specific business requirement.
    We need to use a database trigger to enforce some data integrity which involves more than one table as such cannot use standard constraint. The integrity has to be maintained in the database as the DML statements may be coming from a Java application or PL/SQL code as such we need the logic all in one place.
    The problem being that within the trigger we need to examine the state of the table the trigger is associated with as well as one other table. Obviously using a trigger on a table that is being affected by DML statements causes the dreaded mutating table problem.
    One suggested solution to this was to make the trigger or the code the trigger called autonomous. This allows the trigger to execute by only showing the trigger the original state of the table before any of the DML statements have affected it.
    The problem is this seems to work for single row DML statements but not for multi row DML statements. In multi row the trigger only sees the original state of the table, not the state of the table plus the changes made by any other actions in the same DML statement.
    Below I have shown an example of what I'm seeing.
    I have grossly simplified the example code below to only refer to a single table and use stupidly simple logic
    I do realise i appear to be implementing uniqueness in my own PL/SQL code, this is purely for the example.
    CREATE TABLE mutate_test
    id INTEGER NOT NULL,
    value VARCHAR2(255) NOT NULL
    ALTER TABLE mutate_test ADD CONSTRAINT pk_mutate_test PRIMARY KEY(id);
    ALTER TABLE mutate_test ADD CONSTRAINT ck_mutate_test CHECK (value = UPPER(value));
    CREATE OR REPLACE FUNCTION duplicate_found(in_value IN mutate_test.value%TYPE) RETURN BOOLEAN IS
    PRAGMA AUTONOMOUS_TRANSACTION;
    v_value_found INTEGER;
    BEGIN
    SELECT COUNT(*)
    INTO v_value_found
    FROM mutate_test
    WHERE value = in_value;
    IF v_value_found > 0 THEN
    RETURN TRUE;
    ELSE
    RETURN FALSE;
    END IF;
    END;
    CREATE OR REPLACE TRIGGER tr_mutate_test BEFORE INSERT OR UPDATE ON mutate_test
    FOR EACH ROW
    BEGIN
    IF duplicate_found(:new.value) = TRUE THEN
    RAISE_APPLICATION_ERROR(-20000,'Duplicate value found');
    END IF;
    END;
    INSERT INTO mutate_test (id,value) VALUES (1,'CLIFF');
    INSERT INTO mutate_test (id,value) VALUES (2,'SULA');
    COMMIT;
    SELECT * FROM mutate_test;
    -- Should fail as row 1 already has a value of CLIFF
    INSERT INTO mutate_test (id,value) VALUES (3,'CLIFF');
    COMMIT;
    SELECT * FROM mutate_test;
    -- Should fail as row 1 is already set to CLIFF
    UPDATE mutate_test SET value = 'CLIFF' WHERE id = 2;
    COMMIT;
    SELECT * FROM mutate_test;
    UPDATE mutate_test SET value = 'CLIFFORD' WHERE id = 1;
    COMMIT;
    SELECT * FROM mutate_test;
    INSERT INTO mutate_test (id,value) VALUES (3,'RONNY');
    INSERT INTO mutate_test (id,value) VALUES (4,'TIM');
    INSERT INTO mutate_test (id,value) VALUES (5,'MONIQUE');
    COMMIT;
    SELECT * FROM mutate_test;
    -- Wanted result would be row 1 would be updated from CLIFFORD to CLIFF
    -- and the others raise errors, or all of them raise errors.
    UPDATE mutate_test SET value = 'CLIFF' WHERE id IN (1,3,4);
    COMMIT;
    SELECT * FROM mutate_test;

    This is all from a University application that deals with eLearning.
    Shell = Mapping from the system to an external eLearning application, ie: unique id of the Blackboard course shell, or WebBoard board.
    Term = Academic term
    Sector = University sector, ie: Higher Education, TAFE, etc..
    Resource = eLearning tool, ie: Blackboard, WebBoard, etc..
    Resource Level = Whether the resource is being offered at a Course or Program level
    Resource Mapping = Association of a resource to shell
    What we are trying to achieve is that shells cannot be used across sector boundaries.
    The real table structure is (grossly simplified again)
    CREATE TABLE sector (sector_pk INTEGER PRIMARY KEY);
    CREATE TABLE sector_pattern (sector_pk INTEGER REFERENCES sector(sector_pk), pattern CHAR(2) NOT NULL UNIQUE CHECK (pattern = UPPER(pattern)));
    CREATE TABLE term (term_pk INTEGER PRIMARY KEY, term CHAR(4) NOT NULL UNIQUE CHECK (term = UPPER(term)));
    CREATE TABLE resource_level (resource_level_pk INTEGER PRIMARY KEY, term_pk INTEGER REFERENCES term(term_pk));
    CREATE TABLE shell_detail (shell_detail_pk INTEGER PRIMARY KEY);
    CREATE TABLE resource_mapping (resource_mapping INTEGER PRIMARY KEY, resource_level_pk INTEGER REFERENCES resource_level(resource_level_pk), shell_detail_pk INTEGER REFERENCES shell_detail(shell_detail_pk));
    Based on the Ask Tom article linked I'd liked to use a MATERIALIZED VIEW on the following query
    SELECT DISTINCT rm.shell_detail_pk,sp.sector_pk
    FROM resource_mapping rm, resource_level rl, term t, sector_pattern sp
    WHERE rm.resource_level_pk = rl.resource_level_pk
    AND rl.term_pk = t.term_pk
    AND SUBSTR(t.term,3,2) = sp.pattern;
    Then apply a UNIQUE constraint on that VIEW.
    But I'm receiving a
    SQL Error: ORA-12054: cannot set the ON COMMIT refresh attribute for the materialized view
    I'm not sure how to create the MATERIALIZED VIEW LOG entries for the above VIEW.
    Any ideas anyone? ;)
    Need to do some more reading and research but as Tom says
    "I'm asking around about the future of "SQL" as far as enhancments go like that
    (will update when I get some feedback), but -- you are not limited to triggers
    (in fact, I would avoid triggers as it is virtually IMPOSSIBLE to implement
    cross row/cross object constraints with them!!!! at least correctly)"
    So I think i'll give up on the TRIGGER approach as it doesn't meet our requirements.

  • Updated form/table in showDetails of Panel Tabbed Component

    When there are multiple showDetail components for Panel Tabbed, if anyone of them has an updated form or table, switching between different showDetail components will cause the system throw mandatory field validation errors.
    It looks like all the mandatory LOV fields are reset to be empty in the previous visited tab. Is this the way that Jdev supposed to work? What should we aware of using updated forms/tables in multiple tabs of Panel Tabbed component?

    That's how it works. That's the reason, I get all the data to pre-populate all the components in the page load itself. When I switch between tabs, I don't re-execute the proc and so it won't reset. I use postback to prevent re-execute the proc. when I switch between tabs.
    Boolean postBackValue = (Boolean)JSFUtils.resolveExpression("#{adfFacesContext.postback}");
    Boolean defaultBooleanValue = new Boolean("false");
    if (postBackValue.equals(defaultBooleanValue)) {
    }

  • Multi Block Form Navigation Problem

    Hiii
    i have got a multi block form the problem that am facing now is that when running the FORM and when am over one of the my canvases then if i tried to press any of :
    (Tab button,Down arrow ) the canvas changes to ANOTHER Datablock ...
    i dont know what is the problem ....
    ANY SUGGESTIONS
    OMD

    Make the datablock you want to show on top as the first block in the object navigator.
    HTH.
    Regards,
    Arun

  • Mutating table problem help required

    Hi. I am rather hoping someone will be able to help me with this problem.
    I have two tables, sa and mv. Create script below:
    create table mv (
    moduleId Char(2) CONSTRAINT ck_moduleId CHECK(moduleId in ('M1', 'M2', 'M3', 'M4', 'M5', 'M6', 'M7', 'M8')),
    credits Number(2) CONSTRAINT ck_credits CHECK(credits in (10, 20, 40)),
    constraint pk_mv primary key(moduleId)
    create table sa (
    stuId Char(2) CONSTRAINT ck_stuId CHECK(stuId in ('S1', 'S2', 'S3', 'S4', 'S5')),
    moduleId Char(2),
    constraint pk_sa primary key(stuId, moduleId),
    constraint fk_moduleid foreign key(moduleId) references mv(moduleId)
    And the scripts below is to insert data into both:
    insert into mv VALUES('M1', 20)
    insert into mv VALUES('M2', 20)
    insert into mv VALUES('M3', 20)
    insert into mv VALUES('M4', 20)
    insert into mv VALUES('M5', 40)
    insert into mv VALUES('M6', 10)
    insert into mv VALUES('M7', 10)
    insert into mv VALUES('M8', 20)
    insert into sa VALUES('S1', 'M1')
    insert into sa VALUES('S1', 'M2')
    insert into sa VALUES('S1', 'M3')
    insert into sa VALUES('S2', 'M2')
    insert into sa VALUES('S2', 'M4')
    insert into sa VALUES('S2', 'M5')
    insert into sa VALUES('S3', 'M1')
    insert into sa VALUES('S3', 'M6')
    Now for the actual problems.
    Firstly I need to try and overcome the mutating table problem by ensure that stuid = S1 in table sa can not take both moduleId M5 and M6.
    Just one or the other. I have created a single trigger, but if fails because of the mutating table problem.
    The second problem I need to overcome is that none of the stuids can have moduleIds where total credit value of more than 120 credits. Credit value is stored in the mv table.
    Many thanks in advance for any assistance.

    Use a statement level trigger:
    Firstly I need to try and overcome the mutating table problem by ensure that stuid = S1 in table sa can not take both moduleId M5 and M6.
    SQL> create or replace trigger sa_trg
      2  after insert or update on sa
      3  declare
      4  c number;
      5  begin
      6    select count(distinct moduleId) into c
      7    from sa
      8    where stuid = 'S1'
      9    and moduleId in ('M5','M6');
    10    if c > 1 then
    11       raise_application_error(-20001,'S1 on both M5 and M6!!');
    12    end if;
    13  end;
    14  /
    Trigger created.
    SQL> select * from sa;
    ST MO
    S1 M1
    S1 M2
    S1 M3
    S2 M2
    S2 M4
    S2 M5
    S3 M1
    S3 M6
    8 rows selected.
    SQL> insert into sa values ('S1','M5');
    1 row created.
    SQL> insert into sa values ('S1','M6');
    insert into sa values ('S1','M6')
    ERROR at line 1:
    ORA-20001: S1 on both M5 and M6!!
    ORA-06512: at "SCOTT.SA_TRG", line 9
    ORA-04088: error during execution of trigger 'SCOTT.SA_TRG'
    The second problem I need to overcome is that none of the stuids can have moduleIds where total credit value of more than 120 credits. Credit value is stored in the mv table
    SQL> create or replace trigger sa_trg
      2  after insert or update on sa
      3  declare
      4  c number;
      5  begin
      6    select count(distinct moduleId) into c
      7    from sa
      8    where stuid = 'S1'
      9    and moduleId in ('M5','M6');
    10    if c > 1 then
    11       raise_application_error(-20001,'S1 on both M5 and M6!!');
    12    end if;
    13 
    14    select count(*) into c from (
    15    select stuid
    16    from mv, sa
    17    where sa.moduleid=mv.moduleid
    18    group by stuid
    19    having sum(credits)>120);
    20 
    21    if c > 0 then
    22       raise_application_error(-20002,'A student cannot have more than 120 credits!!');
    23    end if;
    24 
    25  end;
    26  /
    Trigger created.
    SQL>   select stuid, sum(credits)
      2  from mv, sa
      3  where sa.moduleid=mv.moduleid
      4  group by stuid;
    ST SUM(CREDITS)
    S3           30
    S2           80
    S1          100
    SQL> insert into sa
      2  values ('S1','M4');
    1 row created.
    SQL>   select stuid, sum(credits)
      2  from mv, sa
      3  where sa.moduleid=mv.moduleid
      4  group by stuid;
    ST SUM(CREDITS)
    S3           30
    S2           80
    S1          120
    SQL> insert into sa
      2  values ('S1','M7');
    insert into sa
    ERROR at line 1:
    ORA-20002: A student cannot have more than 120 credits!!
    ORA-06512: at "SCOTT.SA_TRG", line 20
    ORA-04088: error during execution of trigger 'SCOTT.SA_TRG'Max
    http://oracleitalia.wordpress.com

  • 2 applications sharing tables: problem with forms

    I have 2 applications and 2 tables, one in each application. One of the table reference to the other (by means of a relation master-detail). My problem is presented when I want to generate a form that permits delete of the table master. In the trigger of pre-delete that generates Designer it is included a call to CGRI$CHK_tableName that validates that not a row be eliminated of the master if has details. How do I do so that not generate that code?

    In Designer you can create PRE_DELETE trigger and override there part which you don't want by command NULL; .
    I hope this will help you.
    Helena

  • Crystal Report Windows Forms Viewer problems - table could not be found

    Hi,
    I installed Crystal Report Viewer in SAP Business One 2007. All the while, I can run the reports without any problem. but when I loaded some of the new report, it gives me the following error message:
    the caption says: "Crystal Reports Windows Forms Viewer"
    the message says: "The table 'paymentVoucher' could not be found.
    Error in file C:\...paymentVoucher.rpt. The table could not be found."
    By the way, I can run the report in another workstation.
    Any help or ideas of why this is happening or how to solve this will be greatly appreciated.
    Thanks in advance.

    The report is not created by me. I just help others to transfer the report from one workstation to another workstation. PaymentVoucher is a view in the database and it is being put at a workstation that can be shared by everyone.
    I've go through other forums and found out that it might be permission issues and now managed to solve the problem already.
    Thanks everyone for the advice.

  • Smart form problem with multiple pages & table problem

    Hi experts,
    I have a problem with my smart form with multiple pages
    Situation: I have a smart form that ALWAYS has at least 2 pages. In one page the quotation, in the second page (basically this is the 3rd page as the 2nd page is optional) the terms and conditions. Sometimes however, when there are many items in the quotation more than 1 page is needed for the quotation.
    The (optional) second page of a quotation has a different header than the first page of a quotation. So I made a second page with 2 secondary windows (where the header texts are in). The main window is after the secondary windows and has to finish the quotation.
    The problem is that my headers of the second page are never printed, it stays a blank space. The table however does continue and is printed.
    Another problem I have is that I have a table (with the quotations) with 6 columns. The first 2 columns are displayed correctly but once the 3rd column the columns are shown on a lign below.
    Regards,
    PJ

    I would suggest another approach to this problem.
    Use just one page. For the headers on the first page, use a secondary window and on the conditions tab, choose the additional event - Only on First Page.
    For the different header on the second page, create another secondary window on the same page (probably even overlapping the first header on your layout). But in this one, on the conditions tab, choose the additional event - Not on First Page.
    The table should flow as you would be using the Main window for this one.
    As for columns, if they are too wide and wont fit in the same line, it would move to the next line. So you would have to re-adjust the line width and test.
    Hope this resolves your problem.
    Regards,
    Ancy
    Edited by: abapfreak on Oct 4, 2010 11:52 AM

  • Apex form based on a table problems with ID column

    Hi all,
    Am going round and round in circles trying to get this to work and i'm not getting anywhere fast.
    Trying to get a form to process an single row insert into a table.
    Using Automatic Row Processing to insert, the pk column page item is hidden and protected.
    I would like to put the source of the PK (hidden and protected) item to be the next value of my sequence:
    CREATE SEQUENCE   "MODULEFEEDBACKID_SEQ"  MINVALUE 1 MAXVALUE 99999 INCREMENT BY 1 START WITH 196 NOCACHE  NOORDER  NOCYCLE
    /But I can't manage to get it to work.. every time i try to submit the page it just says "ORA-01400: cannot insert NULL into ( table )"
    Any ideas?!
    Thanks in advance
    Ashleigh

    when you create the form you said that the sequence is associated to pk? i think not
    then you can create a trigger that set the pk and in the mru return the value of the pk to the item associated with the pk
    or recreate the form with wizard and set the sequence to the pk there

  • Adobe forms table display problem

    Hi all,
            In adobe forms i want to display purchase order details. i have connected the abap editor whit adobe forms using the function module.. my requirment is to display purchase header details in first row contains the header details below that it should disply the line item... for example..
         po number   company code   pur org   pur group
              itemno      mat           matdes     quan       netprice
          74583638   200                      100        6000  
               10          m-10         sample       5             10000
               20          m-20         sample1     5               1231
                                                                       total  11231          
    and also page break... one page contains only 3 purchase order only....

    Go through following links:-
    Nested tables in Adobe Forms --> saptechnical com/Tutorials/AdobeForms/Nestedtables/page1.htm
    Achieving Control Levels functionality in Adobe Forms --> saptechnical com/Tutorials/AdobeForms/Controllevels/page1.htm
    Also check the LiveCycle Designer Help for more information and add . in above URL, strangely SDN does not allow this URL it seems!!
    Chintan

  • Text inversed in the smart form table

    Dear all,
    I'm new in ABAP and working on a smart form which has a cell in table shows an article description in both Arabic & English
    but the Arabic text appears in reversed sequence  in the print preview and after printing it shows like this ##### #########.
    any idea how to solve this problem
    thanks

    Hello,
    Please see the following SAP Note about printing Arabic:
    587150 - Support of Arabic-script languages
    For your Unicode system, then you should be able to print Arabic
    characters via device type ARSWIN or device type SWINCF.
    The Unicode cascading fonts solution with the device type SWINCF
    described in the following SAP Note:
       812821 - Cascading Font settings
    So you need to configure a Frontend output device that uses device type
    ARSWIN and use this to create the print with the Arabic characters.
    Regards,
    David

  • Smart form-table header-box

    Moved to correct forum by moderator
    Hello All,
    in my smartform iam displaying the data by looping a table. i ahve put a header inside loop.
    and for each new sales order , ia m going explicitly to new page, and when more number of items are there, that can fit in one page, then the smartform implicitly going to new page.
    my problem is, when smart form implicitly going to new page, the MAIN WINDOW is not called, so my header is not displayed. iam displaying this header using a template.
    the other windows, like date etc...are displayed, even if it goes to new page implicitly.
    is there any way i can show the header (in template), in page that called implicitely.
    Thanks in advance
    Best Regards,
    Amarender Reddy B
    Edited by: Matt on Dec 17, 2008 9:59 AM

    >
    Amarender Reddy Busireddy wrote:
    > Hello chenna
    > thanks for your answer
    > can you let em know, how to check that, i am getting that check box in display mode, even if enter the smart form in change mode.
    >   i tried many ways but i could not make that check box editable
    Thats because your table is not in the MAIN window I suppose. Keep your table in the MAIN window of the smartform and then Chenna's solution would work fine.
    Vishwa.

  • Dynamic internal table problem in FM - HR_INFOTYPE_OPERATIONS

    Dear All,
    I have a problem when I use a Dynamic internal table in FM - HR_INFOTYPE_OPERTATION..
    Please suggest me on the way to overcome this problem..
    We wanted to have a dynamic Program for Info type operations which can be used for any info types as we are changing only BEGDA and the related actions
    So in my program I have the parameters to accept
    P_BEGDA - 01.10.2007
    P_INFTY - P0008
    P_ACTIO - COPY
    I am able to create a dynamic table based on the parameters P_INFTY and able to read it also using the FM - HR_READ_INFOTYPE
    BUT when I pass the dynamic internal table to a FM - HR_INFOTYPE_OPERTATION I am getting a DUMP
    The DUMP is at the below statement from FM - HR_INFOTYPE_OPERTATION
    ASSIGN record TO <record> CASTING TYPE (tabname). "XDP UniCode
    It gives the below possiblities
    "ASSIGN_BASE_TOO_SHORT" C 
    "SAPLHRMM" or "LHRMMU03"  
    "HR_INFOTYPE_OPERATION"   
    But If I use the below internal table
    Data : g_t_0008 like P0008 occurs 0 with header line.
    And If I use the internal table g_t_0008 instead of dynamic tables then it works. So I strongly feel it's due to not having a header in the dynamic table below see below the sample code on how I am generating a dynamic internal table
    field-symbols: <dyn_table> type standard table.
    data: dy_table type ref to data,
          dy_line  type ref to data,
          xfc type lvc_s_fcat,
          ifc type lvc_t_fcat.
    to get the srurcute
    perform get_structure using l_f_table.
    perform create_dynamic_itab .
    assign dy_table->* to <dyn_table>.
    perform get_data tables <dyn_table01>
                      using pernr-pernr p_infty.
    below are the forms routine….
    form get_structure using p_table.
    data : idetails type abap_compdescr_tab,
           xdetails type abap_compdescr.
    data : ref_table_des type ref to cl_abap_structdescr.
    clear : ifc[], dy_table.
    Get the structure of the table.
      ref_table_des ?=
          cl_abap_typedescr=>describe_by_name( p_table ).
      idetails[] = ref_table_des->components[].
      loop at idetails into xdetails.
        clear xfc.
        xfc-fieldname = xdetails-name .
        xfc-datatype = xdetails-type_kind.
        xfc-inttype = xdetails-type_kind.
        xfc-intlen = xdetails-length.
        xfc-decimals = xdetails-decimals.
        append xfc to ifc.
      endloop.
    endform.
    form create_dynamic_itab.
    Create dynamic internal table and assign to FS
      call method cl_alv_table_create=>create_dynamic_table
                   exporting
                      it_fieldcatalog = ifc
                   importing
                      ep_table        = dy_table.
    endform.
    *&      Form  get_data
    form get_data  tables   p_table
                   using    p_pernr
                            p_infty.
    clear : p_table, p_table[].
      CALL FUNCTION 'HR_READ_INFOTYPE'
           EXPORTING
                PERNR           = P_PERNR
                INFTY           = p_infty
                BEGDA           = p_datum
                ENDDA           = p_datum
           TABLES
                INFTY_TAB       = p_table
           EXCEPTIONS
                INFTY_NOT_FOUND = 1
                OTHERS          = 2.
      CHECK SY-SUBRC EQ 0.
    IF lines( p_table ) GT 0.
    *write :/'Record exist' , 'IT', p_infty.
    clear p_table.
    PERFORM hr_operation tables  p_table
                         using  g_t_t588d-actio g_t_t588d-INFTY
                                g_t_t588d-SUBTY.
    else.
    PERFORM append_status using g_t_itab-pernr p_infty ' '
                                'Error' 'No records'.
    ENDIF.
    endform.                    " get_data
    form hr_operation  tables    p_table
                       using     p_actio P_INFTY P_SUBTY.
    data: l_f_return    LIKE bapireturn1.
    ASSIGN COMPONENT 'BEGDA' OF STRUCTURE p_table TO <l_field>.
          <l_field> = p_begda.
            CALL FUNCTION 'HR_INFOTYPE_OPERATION'
              EXPORTING
                infty         = P_infty
                number        = G_T_ITAB-PERNR
                subtype       = P_subty
                validityend   = g_f_endda
                validitybegin = P_datum
                record        = P_TABLE
                operation     = p_actio
              IMPORTING
                return        = l_f_return.
    IF sy-subrc NE 0.
    ENDIF.
    ENDFORM.

    try
    using field symbol for a wrk area instead of Field symbol for a table
    loop your inernal table (again a field symbol) assigning to <fs_wrkarea>
    in loop call HR_INFO.._OP..
    reward if helpful

Maybe you are looking for