Using procedure with multiple out variables in a query

Hi,
We have a procedure that is time-consuming, which returns 4 variables as out parameters:
procedure calc_values(id in number, val1 out number, val2 out number, val3 out number, val4 out number) isThe id uniquely identifies an product in our database.
I would like to use this in a query (or view), in the form
select s.id, val1, val2, val3, val4 from something s, product_table p
where s.id = p.idI have tried the following approach, but I am kinda stuck
* define a type
* define a table of this type
* write a wrapper function that calls this procedure and returns the results as a table
* pivot the table into columns
* join this with the product table
It feels like I am on the wrong track, i am having trouble to get the id from the product table back into the wrapper function.
Is there a better approach to this? I am on oracle 10g
Thanks!
Rob

Te below is my interpretation of what you asked to do. I don't really know that it is what you want to do or what you should do.
CREATE TYPE prod_vals_def
AS OBJECT
(VAL1      NUMBER,
  VAL2      NUMBER,
  VAL3      NUMBER,
  VAL4      NUMBER
create or replace
TYPE   prod_vals_tab
AS TABLE OF prod_vals_def;
CREATE FUNCTION pvals (p_prod_id  NUMBER)
RETURN prod_vals_tab PIPELINED
AS
  TYPE         ref0 IS REF CURSOR;
  cur0         ref0;
  out_rec      prod_vals_def
            := prod_vals_def(NULL,NULL,NULL,NULL);
BEGIN
  -- CASE replacing SELECT against table I'm not going to create
  CASE p_prod_id
    WHEN 1 THEN
      out_rec.val1 := 1;
      out_rec.val2 := 2;
      out_rec.val3 := 3;
      out_rec.val4 := 4;
    WHEN 2 THEN
      out_rec.val1 := 2;
      out_rec.val2 := 3;
      out_rec.val3 := 4;
      out_rec.val4 := 5;
    WHEN 3 THEN
      out_rec.val1 := 3;
      out_rec.val2 := 4;
      out_rec.val3 := 5;
      out_rec.val4 := 6;
    WHEN 4 THEN
      out_rec.val1 := 4;
      out_rec.val2 := 5;
      out_rec.val3 := 6;
      out_rec.val4 := 7;
    ELSE
      out_rec.val1 := 0;
      out_rec.val2 := 0;
      out_rec.val3 := 0;
      out_rec.val4 := 0;
  END CASE;
  PIPE ROW(out_rec);
END pvals;
WITH s_tab AS
  (SELECT 1 AS prod_id FROM dual
   UNION ALL
   SELECT 2 AS prod_id FROM dual
   UNION ALL
   SELECT 3 AS prod_id FROM dual
   UNION ALL
   SELECT 4 AS prod_id FROM dual
SELECT s.prod_id, p.val1, p.val2, p.val3, p.val4
FROM   s_tab s,
       TABLE(pvals(s.prod_id)) p
PROD_ID  VAL1     VAL2     VAL3     VAL4    
1        1        2        3        4       
2        2        3        4        5       
3        3        4        5        6       
4        4        5        6        7    

Similar Messages

  • Database procedure with IN/OUT parameters

    Hi,
    I have a procedure with multiple OUT parameters,
    but I do not know how to get the values of these out parameters in the calling procedure.
    What I mean is I can simply get the value of a function from a calling procedure as:-
    declare
    val1 number;
    begin
    val1 := func_get_num;
    end;
    How can I get the values of OUT parameters of a procedure in a similar way?

    like
    SQL> var ename_v varchar2(30);
    SQL> var empno_v number;
    SQL> create or replace procedure get_employee(empno out number, ename out varchar)
      2  as
      3  begin
      4     select empno, ename into empno, ename from emp where rownum <=1;
      5  end;
      6  /
    Procedure created.
    Elapsed: 00:00:00.51
    SQL> exec get_employee(:empno_v, :ename_v);
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.12
    SQL> print empno_v
       EMPNO_V
           666
    SQL> print ename_v;
    ENAME_V
    fdddfdf1
    SQL>

  • Reg:execute procedure with in out parameters

    hi,
    what is the code to execute a procedure with in out parameters.can anyone give me an example
    thanks

    872296 wrote:
    thanks for the reply.
    i am very much new to oracle database.i need this code to put in one of my informatica mapping.
    so can you just elaborate what does 'karthick' mean?is it the name of the procedure.No, karthick is the value of the variable that is being passed into the procedure called "P" in karthicks example, then if that procedure changes the value inside, the variable will have that new value passed back out of the procedure to it.
    PROCEDURE prc_mv (name VARCHAR2)
    IS
    BEGIN
    dbms_mview.refresh (mv_name);
    END prc_mv;
    PROCEDURE refresh (response IN OUT NUMBER)
    IS
    BEGIN
    dbms_mview.refresh('mv1','C');
    dbms_mview.refresh('mv2','C');
    response := 1;
    EXCEPTION
    WHEN OTHERS
    THEN
    response := 0;
    END refresh;
    can you give the code for this procedure.Yes.
    DECLARE
      v_response NUMBER;
    BEGIN
      refresh(v_response);
    END;Though your code is awful. There's no point in having the response parameter as an IN OUT if you're not going to pass IN a value and use that in the code anywhere. In your case it only needs to be an OUT parameter because you're just passing back OUT a value. You are also masking any exceptions that happen by using a WHEN OTHERS clause.
    Better code would be something like...
    FUNCTION refresh (mv_name) RETURN NUMBER IS
      v_response NUMBER := 0; -- default response value
      e_mv_not_exist EXCEPTION; -- exception variable
      PRAGMA EXCEPTION_INIT(e_mv_not_exist, -23401); -- connect exception name to internal oracle error number
    BEGIN
      dbms_mview.refresh(mv_name,'C');
      v_response := 1;
    EXCEPTION
      WHEN e_mv_not_exist THEN -- handle specific expected exception
        -- if the materialized view does not exist, handle it gracefully as we don't want to stop
        response := 0;
    END refresh;
    declare
      v_response NUMBER;
    begin
      v_response := refresh('mv1');
      if v_response = 0 then
        -- the materialized view did not exist
      else
        -- the materialized view refreshed ok
      end if;
    end;where your exception handler explicity checks for expected exceptions such as :
    ORA-23401: materialized view "SCOTT"."FRED" does not exist... and any other exceptions that you're not expecting will be raised for you to see.
    It's also better as a function because you don't need to pass in a response value, you just want to get a response value back.
    There's rarely a good need to use OUT or IN OUT parameters. (there's some cases, but it's not something to consider doing as part of your regular design)

  • How to call stored procedure with multiple parameters in an HTML expression

    Hi, Guys:
    Can you show me an example to call stored procedure with multiple parameters in an HTML expression? I need to rewrite a procedure to display multiple pictures of one person stored in database by clicking button.
    The orginal HTML expression is :
    <img src="#OWNER#.dl_sor_image?p_offender_id=#OFFENDER_ID#" width="75" height="75">which calls a procedure as:
    procedure dl_sor_image (p_offender_id IN NUMBER)now I rewrite it as:
    PROCEDURE Sor_Display_Current_Image(p_n_Offender_id IN NUMBER, p_n_image_Count in number)could anyone tell me the format for the html expression to pass multiple parameters?
    Thanks a lot.
    Sam

    Hi:
    Thanks for your help! Your question is what I am trying hard now. Current procedure can only display one picture per person, however, I am supposed to write a new procedure which displays multiple pictures for one person. When user click a button on report, APEX should call this procedure and returns next picture of the same person. The table is SOR_image. However, I rewrite the HTML expression as follows to test to display the second image.
    <img src="#OWNER#.Sor_Display_Current_Image?p_n_Offender_id=#OFFENDER_ID#&p_n_image_Count=2" width="75" height="75"> The procedure code is complied OK as follows:
    create or replace
    PROCEDURE Sor_Display_Current_Image(p_n_Offender_id IN NUMBER, p_n_image_Count in number) AS
        v_mime_type VARCHAR2(48);
        v_length NUMBER;
        v_name VARCHAR2(2000);
        v_image BLOB;
        v_counter number:=0;
        cursor cur_All_Images_of_Offender is
          SELECT 'IMAGE/JPEG' mime_type, dbms_lob.getlength(image) as image_length, image
          FROM sor_image
          WHERE offender_id = p_n_Offender_id;
        rec_Image_of_Offender cur_All_Images_of_Offender%ROWTYPE;
    BEGIN
        open cur_All_Images_of_Offender;
        loop
          fetch cur_All_Images_of_Offender into rec_Image_of_Offender;
          v_counter:=v_counter+1;
          if (v_counter=p_n_image_Count) then
            owa_util.mime_header(nvl(rec_Image_of_Offender.mime_type, 'application/octet'), FALSE);
            htp.p('Content-length: '||rec_Image_of_Offender.image_length);
            owa_util.http_header_close;
            wpg_docload.download_file (rec_Image_of_Offender.image);
          end if;
          exit when ((cur_All_Images_of_Offender%NOTFOUND) or (v_counter>=p_n_image_Count));
        end loop;
        close cur_All_Images_of_Offender;
    END Sor_Display_Current_Image; The procedure just open a cursor to fetch the images belong to the same person, and use wpg_docload.download_file function to display the image specified. But it never works. It is strange because even I use exactly same code as before but change procedure name, Oracle APEX cannot display an image. Is this due to anything such as make file configuration in APEX?
    Thanks
    Sam

  • Problem with database adapter on plsql procedure with in/out parameters

    running BPEL 10.1.3.1 and using the database adapter on a plsql procedure with in/out parameters I get errors
    the plsql procedure:
    create or replace procedure proc_with_clob_inout_parameter(
    p_string in varchar2,
    p_clob in out clob)
    is
    begin
    p_clob := p_string;
    end proc_with_clob_inout_parameter;
    In BPEL I call this procedure. When I only assign a value to the p_string parameters (in a BPEL assign) all is well. When I also assign a value to the p_clob parameter the error occurs:
    <part name="summary">
    <summary>
    file:/ora1/app/oracle/as101.3/bpel/domains/digitaaldossier/tmp/.bpel_janb_inout_1.0_f6908ccf864581b7265c362444e88075.tmp/twee.wsdl
    [ twee_ptt::twee(InputParameters,OutputParameters) ] - WSIF JCA Execute of
    operation 'twee' failed due to: Error while trying to prepare and execute
    an API.
    An error occurred while preparing and executing the
    JANB.PROC_WITH_CLOB_PARAMETER2 API. Cause: java.sql.SQLException: Parameter
    Type Conflict [Caused by: Parameter Type Conflict]
    ; nested exception is:
    ORABPEL-11811
    Error while trying to prepare and execute an API.
    An error occurred while preparing and executing the
    JANB.PROC_WITH_CLOB_INOUT_PARAMETER API. Cause: java.sql.SQLException: Parameter
    Type Conflict [Caused by: Parameter Type Conflict]
    Check to ensure that the API is defined in the database and that the
    parameters match the signature of the API. Contact oracle support if error
    is not fixable.
    </summary>
    </part>
    In BPEL 10.1.2.0 this isn't a problem. I tested it against a 10.2.0.1 and a 10.2.0.2 database and in both situations I get the error with BPEL 10.1.3.1 and no error with BPEL 10.1.2.0
    it appears to be a problem in the database adapter...
    anyone with the same problems and/or a solution?

    Not of any use to you, but we had exactly the same problem on Friday when we applied AS 10.1.2.2 Patchset on top of BPEL 10.1.2.0.2.
    The clob in our pl/sql proc wan't declared as in/out but for some reasons JDeveloper had created a clob on the Output Parameter type in the db partner link xsd. I removed this and it worked. This code had been untouched , and working fine, for months.
    I'll be raising an SR today.
    Rob J

  • Web service with multiple out parameters

    Hi Developers,
    I have been playing around with som web services in the developer studio.
    I can create a webservice from a normal ejb.
    But i can only get one out parameter, which is the return parameter of the ejb.
    I tried to make an object to use as return parameter, but then i couldn't use the method for the web service.
    Can anyone tell me how to make a web service with multiple out parameters?
    Br Rasmus

    Hi Developers,
    I have the same question, is it possible to have multiple outgoing parameters?
    When not, does SAP Netweaver knows a IN-OUT parameter? Because I found on the internet that it is possible to have a IN-OUT parameter. But that was with the BEA Weblogic 8.x.
    When not, is then the only solution to return a object? With in this object all the parameters you want.
    Or otherwise is there a other workaround?
    Thanks in advance,
    Marinus Geuze

  • Toplink support for stored procedure with 2 OUT  REF CURSOR ?

    Can Toplink StoredProcedureCall be used with Oracle PLSql procedure with 2 OUT parameters. Parameter type is Ref Cursor (Oracle PLSQL resulset)
    Regards

    In a TopLink StoredProcedureCall using an OUT CURSOR the cursor is assumed to map to the result set for the TopLink query.
    For example if you had a stored procedure READ_ALL_EMP that returned a out cursor of EMP rows, you could use that procedure in a TopLink mapped Employee class mapped to the EMP table and use the stored procedure in a ReadAllQuery for the Employee class.
    If the procedure does not return data that maps to objects, you can use a DataReadQuery to access the data. The out cursor would be returned as a Vector of DatabaseRows that contain the data from the cursor rows.
    If the procedures data is complex and does not map to objects, it may be better to access the procedure directly through JDBC.

  • Query with multiple outer joins

    I had a doubt with whether the following kind of query is valid with multiple outer-joins. The format of the query is something like this:-
    select A.col1, B.col2
    from table1 A, table2 B, table3 C where
    A.col3=B.col4(+) and B.col5=C.col6(+)
    This would mean the follwoing with regard to outer-joins in the query.
    1) fetch records with col3 in table A matching or not matching col4 in table B
    2) fetch records with col5 in table B matching or not matching col6 in table C
    So, this query is valid?
    I hope, my question is clear.
    Please, help in solving the doubt.
    regards

    This is valid and it works fine

  • Calling Oracle procedure with two OUT parameters

    Hi I am having an Oracle procedure which return ref cursor. I also want to result one more out parameter result. How Can I call the procedure in SQL. Below is the way I am calling my stored procedure with one parameter.
    proc_Test (p_resultset=> My_cursor)
    How can I call the procedure when I have one more OUT parameter. Second parameter returns 0 or 1.
    Thanks in adv

    Yes its possible to use multiple parameter as OUT type in procedure.
    SQL>set serveroutput on size 1000000;
    SQL>CREATE OR REPLACE PROCEDURE myproc(p_cv OUT SYS_REFCURSOR, p_num OUT NUMBER) AS
      2  BEGIN
      3    OPEN p_cv FOR SELECT 'Hello Oracle' sayhello FROM DUAL ;
      4    p_num := 1;
      5  END;
      6  /
    Procedure created.
    SQL>VAR cv REFCURSOR;
    SQL>VAR num NUMBER;
    SQL>EXEC myproc(:cv, :num);
    PL/SQL procedure successfully completed.
    SQL>PRINT cv;
    SAYHELLO
    Hello Oracle
    SQL>PRINT num;
           NUM
             1
    SQL>
    {code}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Calling a Procedure with IN & OUT Parameters

    Hello,
    I usually call my procedures using the following way
    declare variable error_msg varchar2(50)
    exec simple_msg('ABC,'ABC','ABC',:error_msg);
    CREATE OR REPLACE PROCEDURE SIMPLE_MSG (
    ID IN VARCHAR2,
    URL IN VARCHAR2,
    LIST IN VARCHAR2,
    ERROR_MSG OUT VARCHAR2
    Now my question is i am trying to call a proc which has IN OUT parameters. Can somebody guide me on how to call the proc. Thanks
    CREATE OR REPLACE PROCEDURE SIMPLE_MSG (
    ID IN VARCHAR2,
    URL IN VARCHAR2,
    LIST IN VARCHAR2,
    NAME IN OUT VARCHAR,
    ERROR_MSG OUT VARCHAR2

    Hi,
    IN OUT parameters are passed just like OUT paramenters: you must pass a variable.
    If you need to set the IN OUT parameter before calling the procedure, then either
    (a) use a separate EXEC command:
    EXEC  :name := 'Original name';
    EXEC  simple_msg ('ABC', 'ABC', 'ABC', :name, :error_msg);or
    (b) use an anonymous PL/SQL block, like this:
    BEGIN
        :name := 'Original name';
        simple_msg ('ABC', 'ABC', 'ABC', :name, :error_msg);
    END;
    /The parameter can be either a bind variable (as shown above), or a local variable (that can be used only in the block).

  • How to use OSD with Multiple DPs to remote locations

    Hi
    My SCCM 2012 R2 Primary site is located on my corporate office but i need to use OSD for multiple branch locations in different subnets.in My Organization there is network level DHCP server rather than Windows DHCP...
    What would be the complete configuration in this case .. can some one provide the steps..
    Shailendra Dev

    Hi,
    The best way to forward the PXE boot requests to the DP/PXE server is to use IP Helpers in the routers/switches. I assume that the branch locations are without a DP. You can use DHCP scope options in the DHCP servers as well but you will end up with problems
    when PXE-booting machines that run UEFI becuase it is not the same bootfile used and it is not really supported.
    Maybe standalone media could be an option where you have the most of the TS on a USB stick/Drive.
    Regards,>
    Jörgen
    -- My System Center blog ccmexec.com -- Twitter
    @ccmexec

  • How to call a procedure with SYS_REFCURSOR OUT parameter

    Hi,
    Using Oracle 11g R2.
    I'd like to know if it is possible to display the results of a SYS_REFCURSOR in a query. For example, if I had the following stored procedure
    create or replace procedure testprocedure (result OUT sys_refcursor)
    as
    begin
       open result for
          select 1 from dual
          union all
          select 2 from dual;
    end;
    I'd like to call this procedure similar to the way a query is called and executed. Like this
    select * from testprocedure
    I've seen plenty of examples on the web which show how it is possible to loop through results of a sys_refcursor inside of an anonymous block and display the results using dbms_output.putline, but this isn't the method I am looking for.

    I'd like to know if it is possible to display the results of a SYS_REFCURSOR in a query. For example, if I had the following stored procedure
    No - you can only use schema object types (SQL) in SQL queries and only then if you call a function.
    The function can return a SQL collection type or it can be a PIPELINED function whose return value is a SQL collection type. Either way your query will use the TABLE function and be of the form:
    select * from TABLE(testfunction);
    This is sample code for a PIPELINED function based on the SCOTT.EMP table. The function takes a department number parameter and returns the EMP rows for that department:
    -- type to match emp record
    create or replace type emp_scalar_type as object
      (EMPNO NUMBER(4) ,
       ENAME VARCHAR2(10),
       JOB VARCHAR2(9),
       MGR NUMBER(4),
       HIREDATE DATE,
       SAL NUMBER(7, 2),
       COMM NUMBER(7, 2),
       DEPTNO NUMBER(2)
    -- table of emp records
    create or replace type emp_table_type as table of emp_scalar_type
    -- pipelined function
    create or replace function get_emp( p_deptno in number )
      return emp_table_type
      PIPELINED
      as
       TYPE EmpCurTyp IS REF CURSOR RETURN emp%ROWTYPE;
        emp_cv EmpCurTyp;
        l_rec  emp%rowtype;
      begin
        open emp_cv for select * from emp where deptno = p_deptno;
        loop
          fetch emp_cv into l_rec;
          exit when (emp_cv%notfound);
          pipe row( emp_scalar_type( l_rec.empno, LOWER(l_rec.ename),
              l_rec.job, l_rec.mgr, l_rec.hiredate, l_rec.sal, l_rec.comm, l_rec.deptno ) );
        end loop;
        return;
      end;
    select * from table(get_emp(20))

  • Using HLEVEL with multiple hierarchies

    Hi all,
    Is there a way to pass a parameter to the HLEVEL keyword to specifiy which hierarchy (Parent H1,H2, H3, etc.) to use when pulling the HLEVEL?
    We would like to use HLEVEL for report formatting however we need the ability to choose the hiearchy.
    Thanks!
    Mike

    Mike,
    please check the answer in this other post:
    EVPRO with multiple hierarchies
    It's for the MS platform, but it's the same for Netweaver.
    EVPRO can only retrieve the HLEVEL for the first hierarchy. You need to maintain further custom properties if you want to get the level of a member within multiple hierarchies.
    Regards,
    Simmaco

  • Windows XP Using iTunes with Multiple Identities

    Hi. I'm using Windows XP and iTunes 7. I have my music files on an external drive, but all my library files are in My Music folders. I'd like to share all the music with other users of this PC (my kids) from their own identities. I was able to import the music, but album artwork that iTunes does not have that I imported on my own does not shows up on the new identity.
    Also, I am guessing that, if I add a song with the original identity, it will not show up in iTunes with the new identity unless I add the library, folder, song, etc.
    Is there a proper way to share iTunes music on the same PC with multiple identities?
    In advance, thanks for your help.

    hiya!
    hmmmm. it might well be the Windows Fast User Switching causing his problem (although he isn't getting the usual problem i see associated with Fast User Switching):
    iTunes for Windows: about Fast User Switching with Windows XP
    love, b

  • Creating Training manuals using FM with multiple SME's authoring

    Greetings from Norway!
    I am currently considering switching from an InDesign/InCopy workflow over to TC2. Our manuals are heavily dependent on SME input and participation, in fact they write a good deal along with the tech writers.
    Is is possible to have SME contribution using Frame if only the techwriters actually have Frame on their workstations? I have read alot and see that if you use WebDAV you can save the Frame file as a .xml file. Can the SME's write content in an xml format and then have the tech writers import it into the long document in Frame?  If my SME's want to write a new chapter outline for me to follow, is this possible with WebDAV?
    To get 2 licenses in Norway is going to cost us $4,500, so I want to make sure that I can still have the SME input without any problems. We have been using InCopy for this purpose, but are having too many little problems and I would like to move towards Frame.
    ANY input on working with Frame with multiple authors, some of which are not using Frame on their workstations, would be greatly appreciated!
    Thanks in advance,
    kathryn

    katinnorway wrote:
    Greetings from Norway!
    I am currently considering switching from an InDesign/InCopy workflow over to TC2. Our manuals are heavily dependent on SME input and participation, in fact they write a good deal along with the tech writers.
    Is is possible to have SME contribution using Frame if only the techwriters actually have Frame on their workstations? I have read alot and see that if you use WebDAV you can save the Frame file as a .xml file. Can the SME's write content in an xml format and then have the tech writers import it into the long document in Frame?  If my SME's want to write a new chapter outline for me to follow, is this possible with WebDAV?
    To get 2 licenses in Norway is going to cost us $4,500, so I want to make sure that I can still have the SME input without any problems. We have been using InCopy for this purpose, but are having too many little problems and I would like to move towards Frame.
    ANY input on working with Frame with multiple authors, some of which are not using Frame on their workstations, would be greatly appreciated!
    Thanks in advance,
    kathryn
    Hi, Kathryn:
    If you're currently outputting your manuals from InDesign - whether to paper or PDF - there's probably no immediate or compelling need to convert to FrameMaker.
    You'll have the same problems with SMEs maintaining strict style usage, whether in InCopy or Word for import into InDesign or FrameMaker, and you'll have the same problems with SMEs working in FrameMaker directly, even if your company should win a FrameMaker site license in a lottery.
    Even in departments whose members are experienced technical writers, maintaining rigorous style requirements isn't automatic or easy.
    One key reason to consider the Technical Communications Suite is its ability to create help systems. A related reason is its ability to create single-source material for reuse and/or multiple outputs; FrameMaker can work with content management systems, XML, and DITA. All of these are not trivial to implement.
    RoboHelp can work with Word files, if help systems ability is important to you. FrameMaker wouldn't be necessary.
    Though InDesign can work with XML, it currently isn't suited to the kind of XML authoring that FrameMaker is. It's not easy to author for XML in InDesign or InCopy, as it is in FrameMaker, and even in FrameMaker, it's not without problems. InDesign can't do DITA.
    It might be worthwhile to create a small-scale trial in which your SMEs work in Word or InCopy, or some other application whose output maintains style names. Import that material into you InDesign templates, then analyze the problems.
    One major problem will undoubtedly be inconsistent tagging of material with proper styles. A close second will be attempts by the users to apply custom formatting (overrides) to the content, rather than using styles. Other problems include inconsistent use of lists of items, and inclusion of items in running text.
    If you can define a simple set of styles and requirements that the SMEs agree to follow, importing their material to any style-conscious application will require less manual effort.
    If the SMEs will need to revise material that the technical writers send back, you'll want to experiment with round-tripping from your publishing application via RTF or Word file format and reimporting from whatever editing application the SMEs use. If SMEs will agree to edit in Acrobat, this is one way to avoid the inevitable round-tripping artifacts, though it requires manual attention from the technical writers.
    Using a single-flow layout - "single story" in InDesign terms, "single text flow" in FrameMaker terms, rather than the kind of discontinuous graphic-designer's visual layout of pasted page objects and separate stories, will make it easier to reflow revised content. This is the usual way that FrameMaker users work. InDesign's improved long-document tools make it possible to work the same way.
    HTH
    Regards,
    Peter
    Peter Gold
    KnowHow ProServices

Maybe you are looking for