Dynamic queryin based on number of inputs provided

I have 7 columns in a tables for which the user can put in values in the fields in the front end and query. The 7 columns have 7 corresponding fields in the front end. But the querying has to be dynamic ... i.e the user does not have to enter all the items in the front end. He can just enter one column value, or 2 upto 7 values for the different columns and it should pass these values to the back end and query the table based on the user inputs and retrieve the rows.
This means while doin the select on the table the "where" clause where the user provides inputs should be flexible. It should just filter the data based on how many ever input fields the user types in.
Please let me know how I can achieve this.
For Example if the columns are col1,col2,col3 .....col7
If the user just provides value for col1 = col1value and col3 = col3val from front end the query should be like
select * from table where col1= col1value and col3 = col3value
similarly if he just provides col2= col2val and col3 = col3 val then
select * from table where col2= col2value and col3 = col3value
Edited by: user635059 on Dec 15, 2008 4:55 PM

Hi,
I assume only the WHERE-clause changes, depending on the user inputs.
In PL/SQL, put the parts of the that do no change into string variables.
Add lines of the WHERE-caluse as needed.
When you have a complete query in a string, use EXECUTE IMMEDIATE to run it.
For example
before_where_txt  VARCHAR2 (5000) := 'SELECT col_a, col_b, ....';
after_where_txt   VARCHAR2 (5000) := ' ORDER BY col_b, col_c';  -- Note: no semicolon in string
where_txt         VARCHAR2 (5000);
IF  col_a_filter IS NOT NULL
THEN
    where_txt := where_txt || ' AND col_a = ' || col_a_filter;
END IF;
IF  col_b_filter IS NOT NULL
THEN
    where_txt := where_txt || ' AND col_b = ' || col_b_filter;
END IF;
...  -- All the other columns
-- Change the AND at the beginning of where_txt to WHERE
IF  where_txt  IS NOT NULL
THEN
    where_txt := ' WHERE ' || SUBSTR (where_txt, 4);
END IF;
EXECUTE IMMEDIATE before_where_txt
               || where_txt
               || after_where_txt;

Similar Messages

  • How can i create a dynamic structure based on my input from a select-option

    Hello,
    This is to develop a custom report in FI for G/L Balance based on company code.
    I have an input select-option for Company code.
    Based on the range of company code my output layout should be modified.
    I am not very much sure to create a dynamic internal based on the input from a select-option.
    Can any one please let me know how can i do this.
    I would appreciate for anyone who turns up quickly.
    Thank you,
    With regs,
    Anitha Joss.

    See the following program, it builds a dynamic internal table based on the company codes from the select option. 
    report zrich_0001 .
    type-pools: slis.
    field-symbols: <dyn_table> type standard table,
                   <dyn_wa>.
    data: alv_fldcat type slis_t_fieldcat_alv,
          it_fldcat type lvc_t_fcat.
    data: it001 type table of t001 with header line.
    selection-screen begin of block b1 with frame title text-001.
    select-options: s_bukrs for it001-bukrs.
    selection-screen end of block b1.
    start-of-selection.
      select * into table it001 from t001
                     where bukrs in s_bukrs.
      perform build_dyn_itab.
    *  Build_dyn_itab
    form build_dyn_itab.
      data: index(3) type c.
      data: new_table type ref to data,
            new_line  type ref to data,
            wa_it_fldcat type lvc_s_fcat.
      clear wa_it_fldcat.
      wa_it_fldcat-fieldname = 'PERIOD' .
      wa_it_fldcat-datatype = 'CHAR'.
      wa_it_fldcat-intlen = 6.
      append wa_it_fldcat to it_fldcat .
      loop at it001.
        clear wa_it_fldcat.
        wa_it_fldcat-fieldname = it001-bukrs .
        wa_it_fldcat-datatype = 'CHAR'.
        wa_it_fldcat-intlen = 4.
        append wa_it_fldcat to it_fldcat .
      endloop.
    * Create dynamic internal table and assign to FS
      call method cl_alv_table_create=>create_dynamic_table
                   exporting
                      it_fieldcatalog = it_fldcat
                   importing
                      ep_table        = new_table.
      assign new_table->* to <dyn_table>.
    * Create dynamic work area and assign to FS
      create data new_line like line of <dyn_table>.
      assign new_line->* to <dyn_wa>.
    endform.
    Regards,
    Rich Heilman

  • Can I create a dynamic number of inputs during runtime?

    Can I create a dynamic number of inputs during runtime?
    Oracle 11g
    Application Express 4.0.2.00.06
    Here is my problem:
    We have a table that holds metadata about files (hardcopy or softcopy files).
    We expect we may need more columns in the table at some point and don't want to modify the table or the application.
    So in order to do this I would like to create:
    A table called TBL_FILE with the columns:
    TBL_FILE_ID               NUMBER                (This will be the primary key)
    TBL_FILE_NAME          VARCHAR2(1000) (This will be the name of the file)
    A second table will be called TBL_FILE_META with the columns:
    TBL_META_ID               NUMBER               (This will be the primary key)
    TBL_FILE_ID               NUMBER                (This will be the forign key to the file table)
    TBL_META_COLUMN     VARCHAR2(30)     (This is what the column name would be if it existed in TBL_FILE)
    TBL_META_VALUE          VARCHAR2(1000) (This is the value that record and the 'would be' column)
    So a person can have as much meta data on the file with out having to add columns to the table.
    The problem is how can I allow users to add as much data as they like with out having to re develop the page.
    Other things to note is that we would like this to be on a single page.
    I know how to add we can create multi-row inserts by using a SQL Query (updateable report),
    however the TBL_META_VALUE column in the TBL_FILE_META will sometimes be a select list and other times a text box or number field.
    So I don't see now a SQL Query (updateable report) would work for this and I can't create an array of page items at run time can I?
    Any idea's how I could accomplish this? Is there a better way of doing this?
    Also is there a term or a name for what I am doing by creating these 'virtual' columns in another table?
    I found this method when looking at Oracles Workflow tables.

    Welcome to the Oracle Forums !
    >
    Can I create a dynamic number of inputs during runtime?
    Oracle 11g
    Application Express 4.0.2.00.06
    Here is my problem:
    We have a table that holds metadata about files (hardcopy or softcopy files).
    We expect we may need more columns in the table at some point and don't want to modify the table or the application.
    So in order to do this I would like to create:
    A table called TBL_FILE with the columns:
    TBL_FILE_ID NUMBER (This will be the primary key)
    TBL_FILE_NAME VARCHAR2(1000) (This will be the name of the file)
    A second table will be called TBL_FILE_META with the columns:
    TBL_META_ID NUMBER (This will be the primary key)
    TBL_FILE_ID NUMBER (This will be the forign key to the file table)
    TBL_META_COLUMN VARCHAR2(30) (This is what the column name would be if it existed in TBL_FILE)
    TBL_META_VALUE VARCHAR2(1000) (This is the value that record and the 'would be' column)
    So a person can have as much meta data on the file with out having to add columns to the table.
    The problem is how can I allow users to add as much data as they like with out having to re develop the page.
    >
    Creating Page Items dynamically is not available. You will have to create excess items and hide/show , etc. But you cannot change the Item Type. All in all, too many limitations in this approach.
    >
    Other things to note is that we would like this to be on a single page.
    >
    The 100 item limit will hit you if you go with extra item on page. With Tabular Form that should not be a limitation, unless you are exceeding the 50 item limit of APEX_APPLICATION.G_Fnn items, and the 60 column limitation of Report region with "Use Generic Column Names (parse query at runtime only)" of Dynamic region.
    >
    I know how to add we can create multi-row inserts by using a SQL Query (updateable report),
    however the TBL_META_VALUE column in the TBL_FILE_META will sometimes be a select list and other times a text box or number field.
    >
    If the type if item is variable it only means you need a way to store the item type. Meta Data of the Meta Data.
    >
    So I don't see now a SQL Query (updateable report) would work for this and I can't create an array of page items at run time can I?
    >
    Yes, you can do it. Updatable report/ Tabular Form query can be constructed from the Meta Data using PL/SQL Function Returning SQL Query . It will be a bit of coding in PL/SQL where you use the Meta Data and the Meta Data of the Meta Data to piece together your SELECT with the right APEX_ITEMs. It might have a performance penalty associated with it, but will not be a serious degradation.
    >
    Any idea's how I could accomplish this? Is there a better way of doing this?
    Also is there a term or a name for what I am doing by creating these 'virtual' columns in another table?
    I found this method when looking at Oracles Workflow tables.
    >
    I guess that is just a good TNF. It is the Master-Detail Design Pattern, that sound more modern ? ;)
    Regards,

  • How to count Number of Input files onTarget Location?

    Hi Experts,
    I want to identify number of Input files available in Directory of Target system. Input file format is Input*.txt
    Once if I have this Count then based on that I can apply further logic in SAP R/3 coding.
    Please suggest me for the same.
    Regards,

    >
    Jagesh Lakdawala wrote:
    > My requirement is to read the Input Text file available on a given Location.Filename format is Input*.txt because Number of Input file is not fixed. All the Input file data needs to be available at the same time in R/3 coding (Internal table). i.e in a single XML message payload.
    > My question is in this BPM how do i know the LOOP Counter?? because LOOP should run depending on the Number of Input files available with the format Input*.txt.
    >
    > Please suggest.
    >
    > Regards,
    > Jagesh
    so say at one instance there are 7 files and XI picks them up, your BPM collects it and when you send it to R3 you need to know how many files have been processed?
    Well if this is the case, modify your BPM to accommodate collect pattern based on time. So fix a time period basically a time out say an hour. So the BPM will run for an hour after it receives the first file in and if within an hour say 7 files have come in, once the time out kicks in the BPM will exit. In you mapping of N:1 inside the bpm you can write a UDF which will count the occurrance of the root node of the source (a mandatory node of the source) and populate it to any field in the target tht you want to use.
    Is this what you are looking for?

  • Hide multiple rows in a dynamic table based on the row value.

    Hi,
    I need to hide multiple rows in a dynamic table based on the specific value of that row.
    I cant find the right expression to do that.
    please help

    Go to the Row Properties, and in the Visibility tab, you have "Show or hide based on an expression". You can use this to write an expression that resolves to true if the row should be hidden, false otherwise.
    Additionally, in the Matrix properties you should take a look at the filters section, perhaps you can achieve what you wish to achieve through there by removing the unnecessary rows instead of just hiding them.
    It's only so much I can help you with the limited information. If you require further help, please provide us with more information such as what data are you displaying, what's the criteria to hiding rows, etc...
    Regards
    Andrew Borg Cardona

  • Creating a dynamic lov based on a column

    Hi,
    I want to create a dynamic lov based on a column in a database-table.
    Eg. the query
    'select code, description from code_table'
    is the contents of the column 'lov_query' in the table 'parameters'.
    For every parameter there can be a different lov-query, but the result is always
    two columns (code and description, number and name, etc.), exactly what you need to use in a lov.
    I've written a (dbms_sql) function that takes the parameter-id and returns the lov_query.
    create or replace function "GET_PMR_LOV"
    (pmr_id in NUMBER)
    return VARCHAR2
    is
    cur INTEGER := DBMS_SQL.OPEN_CURSOR;
    fdbk INTEGER;
    l_pmr_id NUMBER(9) := pmr_id;
    l_stmnt VARCHAR2(2000);
    begin
    DBMS_SQL.PARSE
    (cur, 'select pmr.lov_query from parameters pmr where pmr.ID ' || ' = 'L_PMR_ID', DBMS_SQL.NATIVE);
    DBMS_SQL.BIND_VARIABLE (cur, 'L_PMR_ID', l_pmr_id);
    DBMS_SQL.DEFINE_COLUMN (cur, 1, l_stmnt, 2000);
    fdbk := DBMS_SQL.EXECUTE (cur);
    fdbk := DBMS_SQL.FETCH_ROWS (cur);
    IF fdbk > 0
    THEN
    DBMS_SQL.COLUMN_VALUE (cur, 1, l_stmnt);
    return (l_stmnt);
    ELSE     
    return null;
    END IF;
    DBMS_SQL.CLOSE_CURSOR (cur);
    END;
    But now I'm stuck on how to pass on this statement in HTMLDB
    as an dynamic lov, I don't seem to be able to execute this statement
    into the two display and return columns. Any ideas?

    Hello again,
    This lov is on an updatable report-column where the user has to make a choice from an non-named, popup and query-based lov. In the lov-query box I have just put:
    "return get_pmr_lov(:p41_param_id)" (without the quotes ;-)
    Here's my latest version plus an alternative, which both seem to work fine:
    create or replace function "GET_PMR_LOV"
    (pmr_id in NUMBER)
    return VARCHAR2
    is
    cur INTEGER := DBMS_SQL.OPEN_CURSOR;
    fdbk INTEGER;
    l_pmr_id NUMBER(9) := pmr_id;
    l_stmnt VARCHAR2(1000);
    begin
    DBMS_SQL.PARSE (cur, 'select pmr.lov_query from paramaters pmr where pmr.ID ' || '= :L_PMR_ID', DBMS_SQL.NATIVE);
    DBMS_SQL.BIND_VARIABLE (cur, 'L_PMR_ID', l_pmr_id);
    DBMS_SQL.DEFINE_COLUMN (cur, 1, l_stmnt, 1000);
    fdbk := DBMS_SQL.EXECUTE (cur);
    fdbk := DBMS_SQL.FETCH_ROWS (cur);
    IF fdbk > 0 THEN
    DBMS_SQL.COLUMN_VALUE (cur, 1, l_stmnt);
    return (l_stmnt);
    ELSE
    return null;
    END IF;
    DBMS_SQL.CLOSE_CURSOR (cur);
    END;
    create or replace function "GET_PMR_LOV2"
    (pmr_id in NUMBER)
    return VARCHAR2
    is
    l_pmr_id NUMBER(9) := pmr_id;
    l_stmnt VARCHAR2(1000);
    BEGIN
    EXECUTE IMMEDIATE 'select pmr.lov_query from parameters pmr where pmr.ID = :1'
    INTO l_stmnt USING l_pmr_id;
    return l_stmnt;
    END;
    The error-message remains the same, unable to bind :p41_param_id !

  • Dynamic Rule based implementation in PL/SQL

    Hi,
    We are trying to implement a dynamic rule based application in Oracle 9i. Its simple logic where we store expressions as case statments and actions seperated by commas as follows.
    Rule: 'Age > 18 and Age <65'
    True Action: 'Status = ''Valid'' , description = ''age in range'''
    False Action: 'Status =''Invalid'', Description=''Age not in range'''
    Where Age,Status, description are all part of one table.
    One way of implementing this is fire rule for each record in the table and then based on true or false call action as update.
    i.e
    select (case when 'Age > 18 and Age <65' then 1 else 0 end) age_rule from tableX
    (above query will in in a cursor xcur)
    Then we search for
    if age_rule = 1 then
    update tablex set Status = ''Valid'' , description = ''age in range'' where id=xcur.id;
    else
    update tablex set Status =''Invalid'', Description=''Age not in range'' where id=xcur.id;
    end if;
    This method will result in very slow performance due to high i/o. We want to implement this in collection based method.
    Any ideas on how to dynamically check rules and apply actions to collection without impact on performance. (we have nearly 3million rows and 80 rules to be applied)
    Thanks in advance

    Returning to your original question, first of all, there is a small flaw in the requirements, because if you apply all the rules to the same table/cols, than the table will have results of only last rule that was processed.
    Suppose rule#1:
    Rule: 'Age > 18 and Age <65'
    True Action: 'Status = ''Valid'' , description = ''age in range'''
    False Action: 'Status =''Invalid'', Description=''Age not in range'''
    and Rule#2:
    Rule: 'Name like ''A%'''
    True Action: 'Status = 'Invalid'' , description = ''name begins with A'''
    False Action: 'Status =''Invalid'', Description=''name not begins with A'''
    Then after applying of rule#1 and rule#2, results of the rule#1 will be lost, because second rule will modify the results of the first rule.
    Regarding to using collections instead of row by row processing, I think that a better approach would be to move that evaluating cursor inside an update statement, in my tests this considerably reduced processed block count and response time.
    Regarding to the expression filter, even so, that you are not going to move to 10g, you still can test this feature and see how it is implemented, to get some ideas of how to better implement your solution. There is a nice paper http://www-db.cs.wisc.edu/cidr2003/program/p27.pdf that describes expression filter implementation.
    Here is my example of two different methods for expression evaluation that I've benchmarked, first is similar to your original example and second is with expression evaluation moved inside an update clause.
    -- fist create two tables rules and data.
    drop table rules;
    drop table data;
    create table rules( id number not null primary key, rule varchar(255), true_action varchar(255), false_action varchar(255) );
    create table data( id integer not null primary key, name varchar(255), age number, status varchar(255), description varchar(255) );
    -- populate this tables with information.
    insert into rules
    select rownum id
    , 'Age > '||least(a,b)||' and Age < '||greatest(a,b) rule
    , 'Status = ''Valid'', description = ''Age in Range''' true_action
    , 'Status = ''Invalid'', description = ''Age not in Range''' false_action
    from (
    select mod(abs(dbms_random.random),60)+10 a, mod(abs(dbms_random.random),60)+10 b
    from all_objects
    where rownum <= 2
    insert into data
    select rownum, object_name, mod(abs(dbms_random.random),60)+10 age, null, null
    from all_objects
    commit;
    -- this is method #1, evaluate rule against every record in the data and do the action
    declare
    eval number;
    id number;
    data_cursor sys_refcursor;
    begin
    execute immediate 'alter session set cursor_sharing=force';
    for rules in ( select * from rules ) loop
    open data_cursor for 'select case when '||rules.rule||' then 1 else 0 end eval, id from data';
    loop
    fetch data_cursor into eval, id;
    exit when data_cursor%notfound;
    if eval = 1 then
    execute immediate 'update data set '||rules.true_action|| ' where id = :id' using id;
    else
    execute immediate 'update data set '||rules.false_action|| ' where id = :id' using id;
    end if;
    end loop;
    end loop;
    end;
    -- this is method #2, evaluate rule against every record in the data and do the action in update, not in select
    begin
    execute immediate 'alter session set cursor_sharing=force';
    for rules in ( select * from rules ) loop
    execute immediate 'update data set '||rules.true_action|| ' where id in (
    select id
    from (
    select case when '||rules.rule||' then 1 else 0 end eval, id
    from data
    where eval = 1 )';
    execute immediate 'update data set '||rules.false_action|| ' where id in (
    select id
    from (
    select case when '||rules.rule||' then 1 else 0 end eval, id
    from data
    where eval = 0 )';
    end loop;
    end;
    Here are SQL_TRACE results for method#1:
    call count cpu elapsed disk query current rows
    Parse 37 0.01 0.04 0 0 0 0
    Execute 78862 16.60 17.50 0 187512 230896 78810
    Fetch 78884 3.84 3.94 2 82887 1 78913
    total 157783 20.46 21.49 2 270399 230897 157723
    and this is results for method#2:
    call count cpu elapsed disk query current rows
    Parse 6 0.00 0.00 0 0 0 0
    Execute 6 1.93 12.77 0 3488 170204 78806
    Fetch 1 0.00 0.00 0 7 0 2
    total 13 1.93 12.77 0 3495 170204 78808
    You can compare this two methods using SQL_TRACE.

  • A dynamic table based on run-time created view object -- please help!

    Hello!
    I'm trying to create a dynamic table based on an run-time created view object. All go ok, but table binding component take the first view/iterator state and don't reflect changes they have. Please, take a look:
    1. At run-time the view is being replaced by new red-only one based on query in application module:
    getQueryView().remove();
    createViewObjectFromQueryStmt("QueryView", statement);
    2. Page definition file contains an iterator (using iterator or methodIterator - doesn't matter) binding and table, which binds to the iterator, like:
    <methodIterator id="distributeQuery1Iter" Binds="distributeQuery1.result"
    DataControl="QueryServiceDataControl" RangeSize="10"/>
    <table id="distributeQuery11" IterBinding="distributeQuery1Iter"/>
    3. The page code uses <af:table>. But, if I use table binding (it's right) like this:
    <af:table var="row" value="#{bindings.distributeQuery11.collectionModel}">
    <af:forEach items="#{bindings.distributeQuery11.attributeDefs}" var="def">
    the table will never changed (i.e. still show the first view instance).
    When I tried to use iterator binding directly (it's bad and cannot provide all needed features unlike CollectionModel from table binding) I saw that table works!
    (Code is somehing like:
    <af:table var="row" value="#{bindings.myIterator.allRowsInRange}">
    <af:forEach items="#{bindings.myIterator.attributeDefs}" var="def">
    Why the table binding do not reflect changes in iterator? Or should I use different approach?
    Thanks in advance!
    Ilya.

    I got it to work! I used a hybrid approach comprised of some of your code and some of Steve Muench's AcceessAppModuleInBackingBean example.
    In the setBindings method, I execute an app module method that redefines the query, then I used your code to delete and recreate bindings and iterator:
    public void setBindingContainer(DCBindingContainer bc) {
    this.bindingContainer = bc;
    rebuildVO();
    The rebuildVO() method looks like the code you provided in your example:
    private void rebuildVO() {
    DCDataControl dc;
    DispatchAppModule dApp;
    DCBindingContainer bc;
    DCIteratorBinding it;
    OperationBinding operationBinding;
    ViewObject vo;
    DCControlBinding cb;
    try {
    bc = getBindingContainer();
    dc = bc.findDataControl(DATACONTROL);
    dApp = (DispatchAppModule)dc.getDataProvider();
    // Execute App Module Method to rebuild VO based upon new SQL Statement.
    dApp.setDispatchViewSQL();
    vo = dApp.findViewObject(DYNAMIC_VIEW_NAME);
    it = bc.findIteratorBinding(DYNAMIC_VO_ITER_NAME);
    it.bindRowSetIterator(vo, true);
    // logger.info("Remove value binding...");
    cb = bc.findCtrlBinding(DYNAMIC_VIEW_NAME);
    cb.getDCIteratorBinding().removeValueBinding(cb);
    bc.removeControlBinding(cb);
    // logger.info("Creating new value binding...");
    FacesCtrlRangeBinding dynamicRangeBinding =
    new FacesCtrlRangeBinding(null,
    bc.findIteratorBinding(DYNAMIC_VO_ITER_NAME), null);
    // logger.info("Add control binding...");
    bc.addControlBinding(DYNAMIC_VIEW_NAME, dynamicRangeBinding);
    } catch (Exception e) {
    e.printStackTrace();
    And my App Module method that redefines the view object looks like this:
    public void setDispatchViewSQL() {
    String SQL =
    "begin ? := PK_BUsiNESS.F_GETDISPATCHVIEWSQL();end;";
    CallableStatement st = null;
    String ViewSQL = null;
    try {
    st = getDBTransaction().createCallableStatement(SQL,
    DBTransaction.DEFAULT);
    * Register the first bind parameter as our return value of type LONGVARCHAR
    st.registerOutParameter(1, OracleTypes.LONGVARCHAR);
    st.execute();
    ViewSQL = ((OracleCallableStatement) st).getString(1);
    findViewObject(DYNAMIC_VO_NAME).remove();
    ViewObject vo = createViewObjectFromQueryStmt(DYNAMIC_VO_NAME, ViewSQL);
    vo.executeQuery();
    } catch (SQLException s) {
    throw new JboException(s);
    } finally {
    try {
    st.close();
    } catch (SQLException s) {
    s.printStackTrace();
    When I run it I get my desired results. One thing I don't quite understand is why when the page is first rendered it shows the last set of records rather than the first. Now I have to figure out how to put navigation URLS in each of the table cells.
    Thanks for your help; I would not have gotten this far without it,
    Jeff

  • Dynamic header based on the chosen Grid POV

    Hello,
    I have two grids Grid1 and Grid2. Both the grids have one editable POV and are different from each other. Either of the grids are being hidden based on a flag being input by the user.
    I need to display the dimension name and the member name of the chosen Grid POV in a text box in the header. This needs to dynamically change based on the grid being displayed. e.g. If the Grid POV for Grid1 is "X" and for Grid2 is "Y", I need to display "X" when the grid2 is hidden and "Y" when grid1 is hidden. There is no conditional formatting on text boxes in headers. Is there any other way to do this?
    Thanks,
    Ravi B

    Hi Ravi,
    yes you can not apply conditional formatting on text boxes.
    But it is possible to put the conditional formatting on the grid cell and then you can pick the text from grid cell into text box.
    Hopefully this will solve your problem.
    Regards,
    Rahul

  • Create Dynamic Structure based on Field-Symbol

    Hi Experts!!
    I need to create a structure with dynamic structure included within.
    I have a parameter on sel. screen in which we provide table name.
    PARAMETERS: p_table TYPE tabname.
    FIELD-SYMBOLS: <gt_data> TYPE ANY TABLE.
    CREATE DATA gr_data TYPE TABLE OF (p_table).
    ASSIGN gr_data-* TO <gt_data>.
    Now I need a structure like below:
    TYPES: BEGIN OF type_test,
    struct TYPE <gt_data>, " dynamic structure based on table name entered on sel. screen
    fld1 TYPE c,
    fld2 TYPE n,
    END OF type_test.
    Can somebody suggest how to achieve this?
    Your help is highly appreciated. Thanks a lot

    You can view this thread where our friend Marcin rocks .. Dynamically create a type
    FIELD-SYMBOLS: <gt_data> TYPE ANY TABLE.
    FIELD-SYMBOLS: <gs_wa> TYPE ANY.
    data:wf_ref type ref to data.
    DATA:i_comp TYPE cl_abap_structdescr=>component_table,
         i_tot_comp TYPE cl_abap_structdescr=>component_table.
    CREATE DATA gr_data TYPE TABLE OF (p_table).
    ASSIGN gr_data-* TO <gt_data>.
    create data wf_ref like line of <gt_data>.
    assign wf_ref->* to <gs_wa>.
    *--Getting Compoents from existing type
      lf_struct ?= cl_abap_typedescr=>describe_by_name( '<GS_WA>' ).
      i_comp = lf_struct->get_components( ).
      APPEND LINES OF i_comp TO i_tot_comp.
    The idea is Get all the field details available it to i_tot_comp, then append individual fields manually to
    i_tot_comp as explained in the link and create a dynamic structure and table.

  • Remote faxing error - A fax number was not provided.

    I have a USRobotics 5637 Fax / Modem attached to a Mac Mini. I can send and receive faxes on the Mini.
    I have enabled printer sharing on the Mini. User rights are everyone is allowed to print. When I try to print to the shared fax from my MacBook Air, The Mini does not send the fax. CUPS provides this error:
    USB_Modem-153
    Unknown
    Withheld
    18k
    Unknown
    completed at
    Mon Aug 12 16:36:37 2013
    "A fax number was not provided."
    So the MacBook Air sees the Fax on the Mini and the job gets sent to the Mini but the fax number apparently does not get sent to the print server. Both machines are running 10.8.4 and are connected to the same (hardwired) network.
    Is there something I am missing. I type the fax number in on the Air and I have tried various formats (xxx-xxxx, (xxx) xxx-xxxx, xxxxxxx etc) just to see if this makes a difference but no luck.
    I have attached the CUPS log file below: There is the USR fax/modem as well as a Brother MFC printer configured.
    Any suggestions?
    Thank you
    D [12/Aug/2013:16:59:29 -0300] cupsdSetBusyState: newbusy="Not busy", busy="Not busy"
    D [12/Aug/2013:16:59:56 -0300] [Client 21] Accepted from 192.168.1.20:631 (IPv4)
    D [12/Aug/2013:16:59:56 -0300] Report: clients=1
    D [12/Aug/2013:16:59:56 -0300] Report: jobs=147
    D [12/Aug/2013:16:59:56 -0300] Report: jobs-active=0
    D [12/Aug/2013:16:59:56 -0300] Report: printers=2
    D [12/Aug/2013:16:59:56 -0300] Report: stringpool-string-count=4968
    D [12/Aug/2013:16:59:56 -0300] Report: stringpool-alloc-bytes=10648
    D [12/Aug/2013:16:59:56 -0300] Report: stringpool-total-bytes=67184
    D [12/Aug/2013:16:59:56 -0300] [Client 21] POST /printers/USB_Modem HTTP/1.1
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [12/Aug/2013:16:59:56 -0300] [Client 21] No authentication data provided.
    D [12/Aug/2013:16:59:56 -0300] [Client 21] 2.0 Get-Printer-Attributes 1
    D [12/Aug/2013:16:59:56 -0300] Get-Printer-Attributes ipps://mini.local.:631/printers/USB_Modem
    D [12/Aug/2013:16:59:56 -0300] Returning IPP successful-ok for Get-Printer-Attributes (ipps://mini.local.:631/printers/USB_Modem) from 192.168.1.20
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [12/Aug/2013:16:59:56 -0300] [Client 21] POST /printers/USB_Modem HTTP/1.1
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [12/Aug/2013:16:59:56 -0300] [Client 21] No authentication data provided.
    D [12/Aug/2013:16:59:56 -0300] [Client 21] 2.0 Validate-Job 2
    D [12/Aug/2013:16:59:56 -0300] Validate-Job ipps://mini.local.:631/printers/USB_Modem
    D [12/Aug/2013:16:59:56 -0300] Returning IPP successful-ok for Validate-Job (ipps://mini.local.:631/printers/USB_Modem) from 192.168.1.20
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Not busy", busy="Active clients"
    D [12/Aug/2013:16:59:56 -0300] [Client 22] Accepted from 192.168.1.20:631 (IPv4)
    D [12/Aug/2013:16:59:56 -0300] [Client 21] POST /printers/USB_Modem HTTP/1.1
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients", busy="Not busy"
    D [12/Aug/2013:16:59:56 -0300] [Client 21] No authentication data provided.
    D [12/Aug/2013:16:59:56 -0300] [Client 22] POST /printers/USB_Modem HTTP/1.1
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients", busy="Active clients"
    D [12/Aug/2013:16:59:56 -0300] [Client 22] No authentication data provided.
    D [12/Aug/2013:16:59:56 -0300] [Client 21] 2.0 Create-Job 3
    D [12/Aug/2013:16:59:56 -0300] Create-Job ipps://mini.local.:631/printers/USB_Modem
    D [12/Aug/2013:16:59:56 -0300] cupsdMarkDirty(---J-)
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients"
    D [12/Aug/2013:16:59:56 -0300] add_job: requesting-user-name="ufa"
    D [12/Aug/2013:16:59:56 -0300] Adding default job-sheets values "none,none"...
    I [12/Aug/2013:16:59:56 -0300] [Job 154] Adding start banner page "none".
    D [12/Aug/2013:16:59:56 -0300] Discarding unused job-created event...
    I [12/Aug/2013:16:59:56 -0300] [Job 154] Queued on "USB_Modem" by "ufa".
    D [12/Aug/2013:16:59:56 -0300] Returning IPP successful-ok for Create-Job (ipps://mini.local.:631/printers/USB_Modem) from 192.168.1.20
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:56 -0300] [Client 22] 2.0 Get-Printer-Attributes 4
    D [12/Aug/2013:16:59:56 -0300] Get-Printer-Attributes ipps://mini.local.:631/printers/USB_Modem
    D [12/Aug/2013:16:59:56 -0300] Returning IPP successful-ok for Get-Printer-Attributes (ipps://mini.local.:631/printers/USB_Modem) from 192.168.1.20
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:56 -0300] [Client 23] Accepted from localhost (Domain)
    D [12/Aug/2013:16:59:56 -0300] [Client 21] POST /printers/USB_Modem HTTP/1.1
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Dirty files"
    D [12/Aug/2013:16:59:56 -0300] [Client 21] No authentication data provided.
    D [12/Aug/2013:16:59:56 -0300] [Client 23] POST / HTTP/1.1
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:56 -0300] [Client 23] No authentication data provided.
    D [12/Aug/2013:16:59:56 -0300] [Client 21] 2.0 Send-Document 5
    D [12/Aug/2013:16:59:56 -0300] [Client 23] 2.0 Get-Jobs 30
    D [12/Aug/2013:16:59:56 -0300] Get-Jobs ipp://localhost:631/printers/USB_Modem
    D [12/Aug/2013:16:59:56 -0300] Returning IPP successful-ok for Get-Jobs (ipp://localhost:631/printers/USB_Modem) from localhost
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:56 -0300] Send-Document ipps://mini.local.:631/printers/USB_Modem
    D [12/Aug/2013:16:59:56 -0300] cupsdIsAuthorized: requesting-user-name="ufa"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] Auto-typing file...
    D [12/Aug/2013:16:59:56 -0300] [Job 154] Request file type is image/tiff.
    D [12/Aug/2013:16:59:56 -0300] cupsdMarkDirty(---J-)
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    I [12/Aug/2013:16:59:56 -0300] [Job 154] File of type image/tiff queued by "ufa".
    I [12/Aug/2013:16:59:56 -0300] [Job 154] Adding end banner page "none".
    D [12/Aug/2013:16:59:56 -0300] cupsdMarkDirty(---J-)
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] time-at-processing=1376337596
    D [12/Aug/2013:16:59:56 -0300] cupsdMarkDirty(---J-)
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:56 -0300] Asserting dark wake.
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:56 -0300] Discarding unused printer-state-changed event...
    D [12/Aug/2013:16:59:56 -0300] [Job 154] job-sheets=none,none
    D [12/Aug/2013:16:59:56 -0300] [Job 154] argv[0]="USB_Modem"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] argv[1]="154"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] argv[2]="ufa"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] argv[3]="untitled text 6"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] argv[4]="1"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] argv[5]="job-uuid=urn:uuid:f1a61d10-1959-3fc1-7248-88abadd7e431 job-originating-host-name=192.168.1.20 time-at-creation=1376337596 time-at-processing=1376337596"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] argv[6]="/private/var/spool/cups/d00154-001"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[0]="<CFProcessPath>"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[1]="CUPS_CACHEDIR=/private/var/spool/cups/cache"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[2]="CUPS_DATADIR=/usr/share/cups"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[3]="CUPS_DOCROOT=/usr/share/doc/cups"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[4]="CUPS_FONTPATH=/usr/share/cups/fonts"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[5]="CUPS_REQUESTROOT=/private/var/spool/cups"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[6]="CUPS_SERVERBIN=/usr/libexec/cups"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[7]="CUPS_SERVERROOT=/private/etc/cups"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[8]="CUPS_STATEDIR=/private/etc/cups"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[9]="HOME=/private/var/spool/cups/tmp"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[10]="PATH=/usr/libexec/cups/filter:/usr/bin:/usr/sbin:/bin:/usr/bin"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[11]="[email protected]"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[12]="SOFTWARE=CUPS/1.6.2"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[13]="TMPDIR=/private/var/spool/cups/tmp"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[14]="USER=root"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[15]="CUPS_MAX_MESSAGE=2047"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[16]="CUPS_SERVER=/private/var/run/cupsd"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[17]="CUPS_ENCRYPTION=IfRequested"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[18]="IPP_PORT=631"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[19]="CHARSET=utf-8"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[20]="LANG=en_US.UTF-8"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[21]="APPLE_LANGUAGE=en-US"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[22]="PPD=/private/etc/cups/ppd/USB_Modem.ppd"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[23]="RIP_MAX_CACHE=128m"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[24]="CONTENT_TYPE=image/tiff"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[25]="DEVICE_URI=fax://dev/cu.usbmodem0000001"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[26]="PRINTER_INFO=FAX"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[27]="PRINTER_LOCATION=mini"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[28]="PRINTER=USB_Modem"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[29]="PRINTER_STATE_REASONS=none"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[30]="CUPS_FILETYPE=document"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[31]="FINAL_CONTENT_TYPE=printer/USB_Modem"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] envp[32]="AUTH_I****"
    I [12/Aug/2013:16:59:56 -0300] [Job 154] Started filter /usr/libexec/cups/filter/cgimagetopdf (PID 51019)
    I [12/Aug/2013:16:59:56 -0300] [Job 154] Started filter /usr/libexec/cups/filter/cgpdftoraster (PID 51020)
    I [12/Aug/2013:16:59:56 -0300] [Job 154] Started filter /usr/libexec/cups/filter/rastertotiff (PID 51021)
    I [12/Aug/2013:16:59:56 -0300] [Job 154] Started backend /usr/libexec/cups/backend/fax (PID 51022)
    D [12/Aug/2013:16:59:56 -0300] Discarding unused job-state-changed event...
    D [12/Aug/2013:16:59:56 -0300] Returning IPP successful-ok for Send-Document (ipps://mini.local.:631/printers/USB_Modem) from 192.168.1.20
    D [12/Aug/2013:16:59:56 -0300] [Client 22] POST /printers/USB_Modem HTTP/1.1
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients, printing jobs, and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:56 -0300] [Client 22] No authentication data provided.
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients, printing jobs, and dirty files", busy="Active clients, printing jobs, and dirty files"
    D [12/Aug/2013:16:59:56 -0300] [Client 22] 2.0 Get-Job-Attributes 6
    D [12/Aug/2013:16:59:56 -0300] Get-Job-Attributes ipps://mini.local.:631/printers/USB_Modem
    D [12/Aug/2013:16:59:56 -0300] Returning IPP successful-ok for Get-Job-Attributes (ipps://mini.local.:631/printers/USB_Modem) from 192.168.1.20
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Active clients, printing jobs, and dirty files"
    D [12/Aug/2013:16:59:56 -0300] [Client 21] HTTP_WAITING Closing on EOF
    D [12/Aug/2013:16:59:56 -0300] [Client 21] Closing connection.
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs and dirty files"
    D [12/Aug/2013:16:59:56 -0300] [Client 22] HTTP_WAITING Closing on EOF
    D [12/Aug/2013:16:59:56 -0300] [Client 22] Closing connection.
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs and dirty files"
    D [12/Aug/2013:16:59:56 -0300] [Client 21] Accepted from 192.168.1.20:631 (IPv4)
    D [12/Aug/2013:16:59:56 -0300] [Client 21] POST /printers/USB_Modem HTTP/1.1
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Active clients, printing jobs, and dirty files", busy="Printing jobs and dirty files"
    D [12/Aug/2013:16:59:56 -0300] [Client 21] No authentication data provided.
    D [12/Aug/2013:16:59:56 -0300] [Client 21] 2.0 Get-Job-Attributes 7
    D [12/Aug/2013:16:59:56 -0300] Get-Job-Attributes ipps://mini.local.:631/printers/USB_Modem
    D [12/Aug/2013:16:59:56 -0300] Returning IPP successful-ok for Get-Job-Attributes (ipps://mini.local.:631/printers/USB_Modem) from 192.168.1.20
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Active clients, printing jobs, and dirty files"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgpdftoraster: copying to temp print file "/private/var/spool/cups/tmp/0c74c52155d4d"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgimagetopdf - document title: "untitled text 6"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgimagetopdf - filename: "/private/var/spool/cups/d00154-001"...
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgimagetopdf - opened PPD file "/private/etc/cups/ppd/USB_Modem.ppd"...
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgimagetopdf - dpi: (204, 196), orientation = 1...
    E [12/Aug/2013:16:59:56 -0300] [Job 154] A fax number was not provided.
    D [12/Aug/2013:16:59:56 -0300] cupsdMarkDirty(---J-)
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs and dirty files"
    D [12/Aug/2013:16:59:56 -0300] cupsdMarkDirty(---J-)
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs and dirty files"
    D [12/Aug/2013:16:59:56 -0300] [Job 154] Set job-printer-state-message to "A fax number was not provided.", current level=ERROR
    D [12/Aug/2013:16:59:56 -0300] Discarding unused job-progress event...
    D [12/Aug/2013:16:59:56 -0300] Discarding unused printer-state-changed event...
    D [12/Aug/2013:16:59:56 -0300] [Job 154] PID 51022 (/usr/libexec/cups/backend/fax) exited with no errors.
    D [12/Aug/2013:16:59:56 -0300] [Job 154] PID 51019 (/usr/libexec/cups/filter/cgimagetopdf) exited with no errors.
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgpdftoraster: “/private/var/spool/cups/tmp/0c74c52155d4dâ€&#157; has 1 pages.
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgpdftoraster: opened PPD file "/private/etc/cups/ppd/USB_Modem.ppd"...
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgpdftoraster: size->width = 612, size->length = 792, size->top = 773.4, size->bottom = 18.6, size->left = 16.6, size->right = 595.4
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgpdftoraster: PreferredRotation = 90
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgpdftoraster: languageLevel = 3, mediaBox.size.width = 612, mediaBox.size.height = 792
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgpdftoraster: colorspace = 3, bitsPerColor = 1
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgpdftoraster: band width = 1640, bytesPerRow = 1640, band height = 2055, height = 2055
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgpdftoraster: context width = 1640, height = 2055, bitsPerComponent = 8, bitsPerPixel = 8, bytesPerRow = 1640, bitmapInfo = 0, resolution = (204.000000, 196.000000)
    D [12/Aug/2013:16:59:56 -0300] [Job 154] cgpdftoraster: bytes written for side 1 = 421275
    D [12/Aug/2013:16:59:56 -0300] [Job 154] rastertotiff read page 1 (421275 bytes)
    D [12/Aug/2013:16:59:56 -0300] [Job 154] PID 51020 (/usr/libexec/cups/filter/cgpdftoraster) exited with no errors.
    D [12/Aug/2013:16:59:56 -0300] [Job 154] PID 51021 (/usr/libexec/cups/filter/rastertotiff) did not catch or ignore signal 13.
    D [12/Aug/2013:16:59:56 -0300] [Job 154] time-at-completed=1376337596
    D [12/Aug/2013:16:59:56 -0300] Discarding unused job-completed event...
    I [12/Aug/2013:16:59:56 -0300] [Job 154] Job completed.
    D [12/Aug/2013:16:59:56 -0300] cupsdMarkDirty(---J-)
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs and dirty files"
    D [12/Aug/2013:16:59:56 -0300] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs and dirty files"
    D [12/Aug/2013:16:59:56 -0300] Discarding unused printer-state-changed event...
    D [12/Aug/2013:16:59:57 -0300] [Client 22] Accepted from 192.168.1.20:631 (IPv4)
    D [12/Aug/2013:16:59:57 -0300] [Job 154] Unloading...
    D [12/Aug/2013:16:59:57 -0300] [Client 22] POST /printers/USB_Modem HTTP/1.1
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Printing jobs and dirty files"
    D [12/Aug/2013:16:59:57 -0300] Releasing dark wake assertion.
    D [12/Aug/2013:16:59:57 -0300] [Client 22] No authentication data provided.
    D [12/Aug/2013:16:59:57 -0300] [Client 21] HTTP_WAITING Closing on EOF
    D [12/Aug/2013:16:59:57 -0300] [Client 21] Closing connection.
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 21] Accepted from 192.168.1.20:631 (IPv4)
    D [12/Aug/2013:16:59:57 -0300] [Client 23] POST / HTTP/1.1
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 23] No authentication data provided.
    D [12/Aug/2013:16:59:57 -0300] [Client 24] Accepted from localhost (Domain)
    D [12/Aug/2013:16:59:57 -0300] [Client 21] POST /printers/USB_Modem HTTP/1.1
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 21] No authentication data provided.
    D [12/Aug/2013:16:59:57 -0300] [Client 24] POST /printers/USB_Modem HTTP/1.1
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 24] No authentication data provided.
    D [12/Aug/2013:16:59:57 -0300] [Client 21] 2.0 Get-Job-Attributes 9
    D [12/Aug/2013:16:59:57 -0300] Get-Job-Attributes ipps://mini.local.:631/printers/USB_Modem
    D [12/Aug/2013:16:59:57 -0300] [Job 154] Loading attributes...
    D [12/Aug/2013:16:59:57 -0300] Returning IPP successful-ok for Get-Job-Attributes (ipps://mini.local.:631/printers/USB_Modem) from 192.168.1.20
    D [12/Aug/2013:16:59:57 -0300] [Client 24] 2.0 Get-Printer-Attributes 30
    D [12/Aug/2013:16:59:57 -0300] Get-Printer-Attributes ipp://localhost/printers/USB_Modem
    D [12/Aug/2013:16:59:57 -0300] Returning IPP successful-ok for Get-Printer-Attributes (ipp://localhost/printers/USB_Modem) from localhost
    D [12/Aug/2013:16:59:57 -0300] [Client 23] 2.0 Get-Printer-Attributes 31
    D [12/Aug/2013:16:59:57 -0300] Get-Printer-Attributes ipp://localhost:631/printers/USB_Modem
    D [12/Aug/2013:16:59:57 -0300] Returning IPP successful-ok for Get-Printer-Attributes (ipp://localhost:631/printers/USB_Modem) from localhost
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 22] 2.0 Get-Printer-Attributes 8
    D [12/Aug/2013:16:59:57 -0300] Get-Printer-Attributes ipps://mini.local.:631/printers/USB_Modem
    D [12/Aug/2013:16:59:57 -0300] Returning IPP successful-ok for Get-Printer-Attributes (ipps://mini.local.:631/printers/USB_Modem) from 192.168.1.20
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 24] POST /printers/Brother_MFC_8480DN HTTP/1.1
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 24] No authentication data provided.
    D [12/Aug/2013:16:59:57 -0300] [Client 21] POST /printers/USB_Modem HTTP/1.1
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 21] No authentication data provided.
    D [12/Aug/2013:16:59:57 -0300] [Client 24] 2.0 Get-Printer-Attributes 31
    D [12/Aug/2013:16:59:57 -0300] Get-Printer-Attributes ipp://localhost/printers/Brother_MFC_8480DN
    D [12/Aug/2013:16:59:57 -0300] Returning IPP successful-ok for Get-Printer-Attributes (ipp://localhost/printers/Brother_MFC_8480DN) from localhost
    D [12/Aug/2013:16:59:57 -0300] [Client 23] POST / HTTP/1.1
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 23] No authentication data provided.
    D [12/Aug/2013:16:59:57 -0300] [Client 21] 2.0 Get-Printer-Attributes 10
    D [12/Aug/2013:16:59:57 -0300] Get-Printer-Attributes ipps://mini.local.:631/printers/USB_Modem
    D [12/Aug/2013:16:59:57 -0300] Returning IPP successful-ok for Get-Printer-Attributes (ipps://mini.local.:631/printers/USB_Modem) from 192.168.1.20
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 22] POST /printers/USB_Modem HTTP/1.1
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 22] No authentication data provided.
    D [12/Aug/2013:16:59:57 -0300] [Client 24] POST /printers/Brother_MFC_8480DN HTTP/1.1
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 24] No authentication data provided.
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 22] 2.0 Get-Job-Attributes 11
    D [12/Aug/2013:16:59:57 -0300] Get-Job-Attributes ipps://mini.local.:631/printers/USB_Modem
    D [12/Aug/2013:16:59:57 -0300] Returning IPP successful-ok for Get-Job-Attributes (ipps://mini.local.:631/printers/USB_Modem) from 192.168.1.20
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 24] 2.0 Get-Printer-Attributes 32
    D [12/Aug/2013:16:59:57 -0300] Get-Printer-Attributes ipp://localhost/printers/Brother_MFC_8480DN
    D [12/Aug/2013:16:59:57 -0300] Returning IPP successful-ok for Get-Printer-Attributes (ipp://localhost/printers/Brother_MFC_8480DN) from localhost
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 23] 2.0 Get-Jobs 32
    D [12/Aug/2013:16:59:57 -0300] Get-Jobs ipp://localhost:631/printers/USB_Modem
    D [12/Aug/2013:16:59:57 -0300] Returning IPP successful-ok for Get-Jobs (ipp://localhost:631/printers/USB_Modem) from localhost
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Dirty files", busy="Active clients and dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 22] HTTP_WAITING Closing on EOF
    D [12/Aug/2013:16:59:57 -0300] [Client 22] Closing connection.
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Dirty files", busy="Dirty files"
    D [12/Aug/2013:16:59:57 -0300] [Client 21] HTTP_WAITING Closing on EOF
    D [12/Aug/2013:16:59:57 -0300] [Client 21] Closing connection.
    D [12/Aug/2013:16:59:57 -0300] cupsdSetBusyState: newbusy="Dirty files", busy="Dirty files"
    D [12/Aug/2013:17:00:00 -0300] [Client 21] Accepted from localhost:631 (IPv6)
    D [12/Aug/2013:17:00:00 -0300] [Client 21] GET /admin/log/error_log? HTTP/1.1
    D [12/Aug/2013:17:00:00 -0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Dirty files"
    D [12/Aug/2013:17:00:00 -0300] [Client 21] Authorized as Xxx using Basic

    Now all are running 10.9.2. Same problem, except that two of the 10.9.2 clients have this problem. (They may both have had this problem with 10.9.1, but it wasn't noticed until now.)
    I have reset the printing system on the serving Mac, added the fax back in, and still have the problem.
    I also reset the printing system on one of the problem clients, tried a different user, and still have the problem.
    I also verified that the fax.ppd files are identical on working and non-working clients. They are.
    This is really, really frustrating.

  • How to find dynamically the current line number in the source file

    Is there a mechanism like __LINE__ and __FILE__ macro in C to get dynamically
    the current line number and file name of a source file?

    Don't know - but others have asked too. Have you searched the forum? For example:
    http://forum.java.sun.com/thread.jsp?forum=31&thread=210496

  • Dynamic LOV based on Current user

    How do i make a dynamic LOV based on the user id of the current user.
    Also how to insert values from a form into a database
    Can anyone please help me out.
    Thanks

    Use portal.wwctx_api.get_user to get the currently logged in userid.
    The simplest example of a form manipulating data is to create the form based on a table. All DML works automagically. You can base your form on a procedure with dummy columns and do your own DML if you wish. Lots more flexibility that way...

  • Restriction of f4 help of a bex variable based on another variable input

    Hi,
    Could you please let me know if there is any possibility to restriction of f4 help of a bex variable based on another variable input.
    eg: when i select particular company code in one variable, i need to restrict the f4 help for another variables eg: pur. group based on selected company code.
    Regards
    Kasi

    Hi,
    Try using replacement path option in bex with replace variable with variable selction.
    Thanks.

  • How to create dynamic context based on a structure defined in the program?

    Hi Experts,
             I need to create a dynamic context based on a structure wa_struc which i have define programatically.
    When I pass wa_struc to structure_name parameter of create_nodeinfo_from_struc, i get a runtime error:
    "Parameter STRUCTURE_NAME contains an invalid value wa_struc."
    How to create dynamic context based on a structure defined in the program?
    I have written the code like this:
    TYPES: BEGIN OF t_type,
                v_carrid TYPE sflight-carrid,
                v_connid TYPE sflight-connid,
             END OF t_type.
      Data:  i_struc type table of t_type,
             wa_struc type t_type.
      data: dyn_node   type ref to if_wd_context_node.
      data: rootnode_info   type ref to if_wd_context_node_info.
      rootnode_info = wd_context->get_node_info( ).
      clear i_struc. refresh i_struc.
      select carrid connid into corresponding fields of table i_struc from sflight where carrid = 'AA'.
    cl_wd_dynamic_tool=>create_nodeinfo_from_struct(
      parent_info = rootnode_info
      node_name = 'dynflight'
      structure_name = 'wa_struc'
      is_multiple = abap_true ).
    dyn_node = wd_context->get_child_node( name = 'dynflight' ).
    dyn_node->bind_table( i_struc ).
    Thanks
    Gopal
    Message was edited by: gopalkrishna baliga

    Hi Michelle,
              First of all Special thanks for your informative answers to my other forum questions. I really appreciate your help.
    Coming back to this question I am still waiting for an answer. Please help. Note that my structure is not in a dictionary.
    I am trying to create a new node. That is
    CONTEXT
    - DYNFLIGHT
    CARRID
    CONNID
    As you see above I am trying to create 'DYNFLIGHT' along with the 2 attributes which are inside this node. The structure of the node that is, no.of attributes may vary based on some condition. Thats why I am trying to create a node dynamically.
    Also I cannot define the structure in the ABAP dictionary because it changes based on condition
    I have updated my code like the following and I am getting error:
    TYPES: BEGIN OF t_type,
    CARRID TYPE sflight-carrid,
    CONNID TYPE sflight-connid,
    END OF t_type.
    Data: i_struc type table of t_type,
    dyn_node type ref to if_wd_context_node,
    rootnode_info type ref to if_wd_context_node_info,
    i_node_att type wdr_context_attr_info_map,
    wa_node_att type line of wdr_context_attr_info_map.
    wa_node_att-name = 'CARRID'.
    wa_node_att-TYPE_NAME = 'SFLIGHT-CARRID'.
    insert wa_node_att into table i_node_att.
    wa_node_att-name = 'CONNID'.
    wa_node_att-TYPE_NAME = 'SFLIGHT-CONNID'.
    insert wa_node_att into table i_node_att.
    clear i_struc. refresh i_struc.
    select carrid connid into corresponding fields of table i_struc from sflight where carrid = 'AA'.
    rootnode_info = wd_context->get_node_info( ).
    rootnode_info->add_new_child_node( name = 'DYNFLIGHT'
    attributes = i_node_att
    is_multiple = abap_true ).
    dyn_node = wd_context->get_child_node( 'DYNFLIGHT' ).
    dyn_node->bind_table( i_struc ).
    l_ref_interfacecontroller->set_data( dyn_node ).
    But now I am getting the following error :
    The following error text was processed in the system PET : Line types of an internal table and a work area not compatible.
    The error occurred on the application server FMSAP995_PET_02 and in the work process 0 .
    The termination type was: RABAX_STATE
    The ABAP call stack was:
    Method: IF_WD_CONTEXT_NODE~GET_STATIC_ATTRIBUTES_TABLE of program CL_WDR_CONTEXT_NODE_VAL=======CP
    Method: GET_REF_TO_TABLE of program CL_SALV_WD_DATA_TABLE=========CP
    Method: EXECUTE of program CL_SALV_WD_SERVICE_MANAGER====CP
    Method: APPLY_SERVICES of program CL_SALV_BS_RESULT_DATA_TABLE==CP
    Method: REFRESH of program CL_SALV_BS_RESULT_DATA_TABLE==CP
    Method: IF_SALV_WD_COMP_TABLE_DATA~MAP_FROM_SOURCE_DATA of program CL_SALV_WD_C_TABLE_V_TABLE====CP
    Method: IF_SALV_WD_COMP_TABLE_DATA~MAP_FROM_SOURCE of program CL_SALV_WD_C_TABLE_V_TABLE====CP
    Method: IF_SALV_WD_COMP_TABLE_DATA~UPDATE of program CL_SALV_WD_C_TABLE_V_TABLE====CP
    Method: IF_SALV_WD_VIEW~MODIFY of program CL_SALV_WD_C_TABLE_V_TABLE====CP
    Method: IF_SALV_WD_COMPONENT~VIEW_MODIFY of program CL_SALV_WD_A_COMPONENT========CP
    -Gopal
    Message was edited by: gopalkrishna baliga

Maybe you are looking for

  • Description of field from data element in table control

    hello people !!! I need help !! I’m using a table control in my module pool program. I create this table through wizard, taking the fields from an internal table. This internal table was defined like this: Table Control ; posting items DATA: t_postit

  • Someone please help!! Can't install logic pro 9 on my new macbook pro 2012

    Hi guys, ive been scrolling the internet for days and actually can't find the solution to my next problem: I bought the new macbook pro 15" running mac osx 10.7.4. now i want to install logic 9 on this computer. Before this i've already been using lo

  • Feedback for new Email system - do you like it, or...

    Does anyone know whether it is possible to give feedback  on the new email system to anyone in BT who might listen (and preferably do something about it)? I am finding it much slower that the previous version; I don't like the pop up messages - email

  • MAC OSX for Engineering

    Hi, Apple's marketing says: OSX Lion the most advanced operating system. I agree for its features, but I'd like to use it in many processes. People can't develop productivity to have a good tool. I consider that it's essential that Apple encourage de

  • CONVERT TO FOREIGN CURRENCY

    Hi all, I am using CONVERT_TO_FOREIGN_CURRENCY function module for converting local currency to foreign currency. I am converting from HUF to USD ,in this case it is giving the error like USD/HUF exchange rates are not maintaining. But in my system e