MS Word 2007 Mail Merge Doc save as changes content of other documents everytime I save as a new document

Have a mail merge initiated in Access that creates a Merge document. When I save the document as newXXX.doc..........., doc is saved but internal contents of oldXXX.doc are also changed to match last saved document. Help please.

That suggests you are saving a copy of the mailmerge main document instead of executing the merge to create an output document - which is the one you should be saving. Consequently, with your current process, the saved document remains linked to the data
source.
Cheers
Paul Edstein
[MS MVP - Word]

Similar Messages

  • Word 2007 mail merge : problem with mixed portrait and landscape orientations

    Hi there,
    I have a 3 pages document Word 2007 file
    This is a mail merge I want to export in PDF using Adobe Acrobat Printer,
    then send "big" PDF to printing.
    page 1 is PORTRAIT
    page 2 is PORTRAIT
    page 3 is LANDSCAPE
    In PDF pages 1 and 2 are perfectly fine, inside an A4 format (width=210 height=297mm or something)
    but for page 3, system changed to a "double" sized page (A3 width=297 height=420) and printed my stuff at the 1st top middle of big page.
    So I have a big "double" sheet, oriented PORTRAIT, with my stuff in 1st half, and a blank in 2nd half.
    It seems that system did not rotate the page... and just put the stuff into a bigger sheet to "solve" at best.
    I would like the same size of paper (A4) but in landscape : width=297 height=210
    I have already seen many PDF with mixed portrait and landscape orientations, so what's the thing ?
    With my advanced thanks,
    And greetings from Paris, France !
    Vince

    Some questions:
    Which version of office were you using before? 2003?
    Are the data files on a network, or on your local machine? If they are on a network, can you make a copy of one of them on your local machine and try again?
    Can you open the files directly in Excel? What extension do they have (.xls, or something else?) I am wondering whether access to other file types has been left blocked on your machine but is allowed on your colleague's machine.
    Are you just opening the mail merge main document and seeing this message? If so, do you see the same thing if you start with a new document and try to connect to one of these data sources?
    Can you confirm that the message is about Access even though you are trying to connect to an Excel file?
    (Also, office 2007 has some new stuff - that let's you specify that certain folders are "trusted" . I don't think that ever affected MailMerge but it may be as well to make sure that your documents and data sources are in trusted locations).
    Also worth trying to start Word in "Safe mode" - see, e.g. http://office.microsoft.com/en-gb/word-help/work-with-office-safe-modes-HP010140792.aspx
    Peter Jamieson

  • OLE2 from Forms 10g to Microsoft Word 2007 Mail Merge

    We have an Oracle Form that allows the user to print off information on the Form to a Microsoft Word document via OLE2 and mail merging; Forms version is 10.1.2.0.2 as it the version of OAS (from Linux Redhat AS4). This currently works fine if the user has Microsoft Word 2000, but since a recent upgrade to Office 2003 and now in some cases 2007, this functionality doesn't work. The JInitiator Console displays the following error messages:
    Oracle JInitiator: Version 1.3.1.22
    Using JRE version 1.3.1.22-internal Java HotSpot(TM) Client VM
    User home directory = C:\Documents and Settings\jovinc
    Proxy Configuration: Manual Configuration
    Proxy: stpproxy:80
    Proxy Overrides: 172.27*,172.28*,10*,10.*,intranet.fnfis.com*,ljtcapd05.fnfis.com,ukbiprodlx01,ukbiprodlx01.certegy.com,ukbiprodlx02*,ukbiprodlx02.certegy.com*
    JAR cache enabled
    Location: C:\Documents and Settings\jovinc\Oracle Jar Cache
    Maximum size: 50 MB
    Compression level: 0
    c: clear console window
    f: finalize objects on finalization queue
    g: garbage collect
    h: display this help message
    l: dump classloader list
    m: print memory usage
    q: hide console
    s: dump system properties
    t: dump thread list
    x: clear classloader cache
    0-5: set trace level to <n>
    Loading http://ukbiprodlx01.certegy.com:7778/forms/java/frmall_jinit.jar from JAR cache
    Loading http://ukbiprodlx01.certegy.com:7778/forms/java/frmrwinteg.jar from JAR cache
    Loading http://ukbiprodlx01.certegy.com:7778/forms/java/frmwebutil.jar from JAR cache
    Loading http://ukbiprodlx01.certegy.com:7778/forms/java/jacob.jar from JAR cache
    Loading http://ukbiprodlx01.certegy.com:7778/forms/CTYCommonLive/CommonImages.jar from JAR cache
    Loading http://ukbiprodlx01.certegy.com:7778/forms/CTYLogonLive/LogonImages.jar from JAR cache
    Loading http://ukbiprodlx01.certegy.com:7778/forms/CTYXplorerLive/XplorerImages.jar from JAR cache
    proxyHost=null
    proxyPort=0
    connectMode=HTTP, native.
    Forms Applet version is : 10.1.2.0
    2009-Aug-19 11:30:43.785 ERROR>WUO-714 [OleFunctions.setExceptionValues()] Unable to get the last OLE Error details; Exception
    null
    2009-Aug-19 11:30:43.785 ERROR>WUO-707 [OleFunctions.invoke_obj()] Unable to invoke Method: TypeText; Exception
    com.jacob.com.ComFailException: A COM exception has been encountered:
    At Invoke of: TypeText
    Description: Type mismatch.
    2009-Aug-19 11:30:44.848 ERROR>WUO-707 [OleFunctions.invoke_obj()] Unable to invoke Method: Execute; Exception
    com.jacob.com.ComFailException: Invoke of: Execute
    Source: Microsoft Word
    Description: This method or property is not available because the document is not a mail merge main document.
    The below code is used within the Form when they invoke the 'Print' function:
    PROCEDURE PR_print_invoice
    IS
    l_t_application CLIENT_OLE2.OBJ_TYPE;
    l_t_documents CLIENT_OLE2.OBJ_TYPE;
    l_t_source_doc CLIENT_OLE2.OBJ_TYPE;
    l_t_letter_doc CLIENT_OLE2.OBJ_TYPE;
    l_t_merge_doc CLIENT_OLE2.OBJ_TYPE;
    l_t_mail_merge CLIENT_OLE2.OBJ_TYPE;
    l_t_selection CLIENT_OLE2.OBJ_TYPE;
    l_t_args CLIENT_OLE2.LIST_TYPE;
    l_t_args_move_right CLIENT_OLE2.LIST_TYPE;
    l_v_sourcefile VARCHAR2(2000);
    l_v_letter VARCHAR2(2000);
    l_v_mergefile VARCHAR2(2000);      
    l_v_destination_directory VARCHAR2(2000);
    l_v_source_directory VARCHAR2(2000);
    l_n_ok NUMBER;
    l_n_tax NUMBER;
    l_n_total_value NUMBER;
    l_n_total_tax NUMBER;
    l_v_country VARCHAR2(3);     
    l_t_bca_client_address_line1 bill_client_address.bca_client_address_line1%TYPE;
    l_t_bca_client_address_line2 bill_client_address.bca_client_address_line2%TYPE;
    l_t_bca_client_address_line3 bill_client_address.bca_client_address_line3%TYPE;
    l_t_bca_client_address_line4 bill_client_address.bca_client_address_line4%TYPE;
    l_t_bca_client_address_line5 bill_client_address.bca_client_address_line5%TYPE;
    l_t_bca_client_address_line6 bill_client_address.bca_client_address_line6%TYPE;
    l_t_bcl_client_name bill_client.bcl_client_name%TYPE;
    l_t_bcl_client_id bill_client.bcl_client_id%TYPE;
    l_t_trt_rate tax_rate.trt_rate%TYPE;     
    l_t_rli_description_1 reference_list.rli_description_1%TYPE;
    l_n_item_count NUMBER := 0;
    l_b_debug BOOLEAN;
    l_b_ok BOOLEAN;
    l_n_bookmark NUMBER := 0;
    l_n_counter PLS_INTEGER;
    CURSOR l_cur_client( p_ti_bcl_seq_num IN bill_client.bcl_seq_num%TYPE )
    IS
    SELECT bcl_client_id
    , bcl_client_name
    FROM bill_client
    WHERE bcl_seq_num = p_ti_bcl_seq_num
    CURSOR l_cur_client_address( p_ti_bcl_seq_num IN bill_client.bcl_seq_num%TYPE )
    IS
    SELECT bca_client_address_line1
    , bca_client_address_line2
    , bca_client_address_line3
    , bca_client_address_line4
    , bca_client_address_line5
    , bca_client_address_line6
    FROM bill_client_address bca
    , role
    WHERE bca_bcl_seq_num = p_ti_bcl_seq_num
    AND rol_ref_type = 'INVPOINT'
    AND rol_bcl_seq_num = p_ti_bcl_seq_num
    AND rol_bca_seq_num = bca_seq_num
    CURSOR l_cur_items( p_ti_mih_seq_num IN manual_invoice_header.mih_seq_num%TYPE )
    IS
    SELECT mil_tco_seq_num
    , mil_value
    , mil_description
    , mil_quantity
    , rownum
    FROM manual_invoice_line mil
    WHERE mil_mih_seq_num = p_ti_mih_seq_num
    CURSOR l_cur_count_items( p_ti_mih_seq_num IN manual_invoice_header.mih_seq_num%TYPE )
    IS
    SELECT count(*)
    FROM manual_invoice_line
    WHERE mil_mih_seq_num = p_ti_mih_seq_num
    CURSOR l_cur_tax_rate( p_ti_tco_seq_num IN tax_rate.trt_tco_seq_num%TYPE
    , p_ti_mih_invoice_date manual_invoice_header.mih_invoice_date%TYPE )
    IS
    SELECT trt_rate
    FROM tax_rate
    WHERE trt_tco_seq_num = p_ti_tco_seq_num
    AND p_ti_mih_invoice_date BETWEEN trt_effective_date AND NVL( trt_effective_end_date, p_ti_mih_invoice_date )
    CURSOR l_cur_ref_list( p_ti_rli_code reference_list.rli_code%TYPE )
    IS
    SELECT rli_description_1
    FROM reference_list
    WHERE rli_rty_code = 'INTYP'
    AND rli_bcy_seq_num = NVL( :GLOBAL.bcy_seq_num, 1 )
    AND rli_code = p_ti_rli_code
    CURSOR l_cur_country( p_ti_bcy_seq_num bill_country.bcy_seq_num%TYPE )
    IS
    SELECT bcy_short_name
    FROM bill_country
    WHERE bcy_seq_num = p_ti_bcy_seq_num
    PROCEDURE PR_Insert_Cell( p_vi_text IN VARCHAR2 )
    IS
    l_n_bookmark NUMBER := 0;
    BEGIN
    l_n_bookmark := 1;
    l_t_args := CLIENT_OLE2.CREATE_ARGLIST;
    CLIENT_OLE2.ADD_ARG( l_t_args, p_vi_text );
    CLIENT_OLE2.INVOKE( l_t_selection, 'TypeText', l_t_args);
    CLIENT_OLE2.DESTROY_ARGLIST( l_t_args );
    EXCEPTION
    WHEN FORM_TRIGGER_FAILURE
    THEN
    RAISE;
    WHEN OTHERS
    THEN
    PA_lib_msg.PR_others_exception( 'PA_hci_misc.PR_print_invoice.PR_insert_cell', l_n_bookmark );
    END;
    BEGIN
    l_n_bookmark := 1;
    SYNCHRONIZE;
    l_n_bookmark := 2;
    OPEN l_cur_country( :GLOBAL.bcy_seq_num );
    FETCH l_cur_country INTO l_v_country;
    CLOSE l_cur_country;
    -- Determine invoice names and locations and fetch them from the server
    l_n_bookmark := 3;
    l_v_sourcefile := pa_lib_security.fn_fetch_environment( 'ManualInvoiceSourceFile' );
    l_v_letter := pa_lib_security.fn_fetch_environment( l_v_country || 'ManualInvoiceMergeFile' );
    l_v_source_directory := pa_lib_security.fn_fetch_environment( 'SourceManualInvoiceDirectory' );
    l_v_destination_directory := pa_lib_security.fn_fetch_environment( 'DestinationManualInvoiceDir' );
    l_b_debug := ( pa_lib_security.fn_fetch_environment( 'ManualInvoiceDebug' ) = 'Y' );
    l_b_ok := webutil_file_transfer.as_to_client( l_v_destination_directory||l_v_sourcefile, l_v_source_directory||l_v_sourcefile );
    l_b_ok := webutil_file_transfer.as_to_client( l_v_destination_directory||l_v_letter, l_v_source_directory||l_v_letter );
    l_n_bookmark := 4;
    IF ( :SYSTEM.FORM_STATUS = 'CHANGED' )
    THEN
    l_n_bookmark := 5;
    DO_KEY('commit_form');
    END IF;
    l_n_bookmark := 6;
    OPEN l_cur_count_items( :blk_manual_inv_header.mih_seq_num );
    FETCH l_cur_count_items INTO l_n_item_count;
    CLOSE l_cur_count_items;
    IF ( l_n_item_count = 0 )
    THEN
    pa_lib_msg.pr_message_alert( 'STB', -119 );
    RETURN;
    END IF;
    l_n_bookmark := 7;
    SET_APPLICATION_PROPERTY( CURSOR_STYLE, 'BUSY' );
    -- Start Word
    l_n_bookmark := 8;
    l_t_application := CLIENT_OLE2.CREATE_OBJ( 'Word.Application' );
    l_t_documents := CLIENT_OLE2.GET_OBJ_PROPERTY( l_t_application, 'Documents' );
    IF ( l_b_debug )
    THEN
    CLIENT_OLE2.SET_PROPERTY( l_t_application, 'Visible', 1 );
    END IF;
    -- Open source file
    l_n_bookmark := 9;
    l_t_args := CLIENT_OLE2.CREATE_ARGLIST;
    CLIENT_OLE2.ADD_ARG( l_t_args, l_v_destination_directory||l_v_sourcefile );
    l_t_source_doc := CLIENT_OLE2.INVOKE_OBJ( l_t_documents, 'Open', l_t_args );
    CLIENT_OLE2.DESTROY_ARGLIST( l_t_args );
    -- Populate source file with invoice items
    l_n_bookmark := 10;
    OPEN l_cur_client( :parameter.p_bcl_seq_num );
    FETCH l_cur_client INTO l_t_bcl_client_id, l_t_bcl_client_name;
    IF ( l_cur_client%NOTFOUND )
    THEN
    CLOSE l_cur_client;
    pa_lib_msg.pr_message_alert( 'STB', -121 );
    END IF;
    CLOSE l_cur_client;
    l_n_bookmark := 11;
    OPEN l_cur_client_address( :parameter.p_bcl_seq_num );
    FETCH l_cur_client_address INTO l_t_bca_client_address_line1
    , l_t_bca_client_address_line2
    , l_t_bca_client_address_line3
    , l_t_bca_client_address_line4
    , l_t_bca_client_address_line5
    , l_t_bca_client_address_line6;
    IF ( l_cur_client_address%NOTFOUND )
    THEN
    CLOSE l_cur_client_address;
    pa_lib_msg.pr_message_alert( 'STB', -122 );
    END IF;
    CLOSE l_cur_client_address;
    l_n_bookmark := 12;
    OPEN l_cur_ref_list( :blk_manual_inv_header.mih_invoice_type );
    FETCH l_cur_ref_list INTO l_t_rli_description_1;
    IF ( l_cur_ref_list%NOTFOUND )
    THEN
    CLOSE l_cur_ref_list;
    pa_lib_msg.pr_message_alert( 'STB', -123 );
    END IF;
    CLOSE l_cur_ref_list;
    -- Move to first data column
    l_n_bookmark := 13;
    l_t_selection := CLIENT_OLE2.GET_OBJ_PROPERTY( l_t_application, 'Selection' );
    l_t_args_move_right := CLIENT_OLE2.CREATE_ARGLIST;
    CLIENT_OLE2.ADD_ARG( l_t_args_move_right, 12 );
    CLIENT_OLE2.ADD_ARG( l_t_args_move_right, 1 );
    CLIENT_OLE2.ADD_ARG( l_t_args_move_right, 0 );
    FOR l_n_counter IN 1 .. 19
    LOOP
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    END LOOP;
    l_n_bookmark := 14;
    l_n_total_value := 0;
    l_n_total_tax := 0;
    FOR l_r_items IN l_cur_items( :blk_manual_inv_header.mih_seq_num )
    LOOP
    l_n_bookmark := 15;
    OPEN l_cur_tax_rate( l_r_items.mil_tco_seq_num, :blk_manual_inv_header.mih_invoice_date );
    FETCH l_cur_tax_rate INTO l_t_trt_rate;
    IF ( l_cur_tax_rate%NOTFOUND )
    THEN
    CLOSE l_cur_tax_rate;
    pa_lib_msg.pr_message_alert( 'STB', -124 );
    END IF;
    CLOSE l_cur_tax_rate;
    l_n_tax := ROUND( l_r_items.mil_value * ( l_t_trt_rate / 100 ), 2 );
    l_n_total_tax := l_n_total_tax + l_n_tax;
    l_n_total_value := l_n_total_value + l_r_items.mil_value;
    END LOOP;
    l_n_bookmark := 16;
    FOR l_r_items IN l_cur_items( :blk_manual_inv_header.mih_seq_num )
    LOOP
    l_n_bookmark := 17;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( l_r_items.mil_description );
    l_n_bookmark := 18;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( TO_CHAR( l_r_items.mil_quantity ) );
    l_n_bookmark := 19;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( TO_CHAR( l_r_items.mil_value, '99999999.90' ) );
    l_n_bookmark := 20;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    OPEN l_cur_tax_rate( l_r_items.mil_tco_seq_num, :blk_manual_inv_header.mih_invoice_date );
    FETCH l_cur_tax_rate INTO l_t_trt_rate;
    IF ( l_cur_tax_rate%NOTFOUND )
    THEN
    CLOSE l_cur_tax_rate;
    pa_lib_msg.pr_message_alert( 'STB', -124 );
    END IF;
    CLOSE l_cur_tax_rate;
    PR_insert_cell( TO_CHAR( l_t_trt_rate ) || '%' );
    l_n_bookmark := 21;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    l_n_tax := ROUND( l_r_items.mil_value * ( l_t_trt_rate / 100 ), 2 );
    PR_insert_cell( TO_CHAR( l_n_tax, '99999999.90' ) );
    l_n_bookmark := 22;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( TO_CHAR( l_r_items.rownum ) );
    l_n_bookmark := 23;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( UPPER( l_t_rli_description_1 ) );
    l_n_bookmark := 24;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( l_t_bcl_client_name );
    l_n_bookmark := 25;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( l_t_bca_client_address_line1 );
    l_n_bookmark := 26;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( l_t_bca_client_address_line2 );
    l_n_bookmark := 27;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( l_t_bca_client_address_line3 );
    l_n_bookmark := 28;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( l_t_bca_client_address_line4 );
    l_n_bookmark := 29;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( l_t_bca_client_address_line5 );
    l_n_bookmark := 30;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( l_t_bca_client_address_line6 );
    l_n_bookmark := 31;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( TO_CHAR( :blk_manual_inv_header.mih_invoice_date, 'DD/MM/YYYY' ) );
    l_n_bookmark := 32;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    PR_insert_cell( l_t_bcl_client_id );
    l_n_bookmark := 33;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    IF ( :blk_manual_inv_header.mih_invoice_prefix IS NULL )
    THEN
    PR_insert_cell( TO_CHAR( :blk_manual_inv_header.mih_invoice_number, '0000000009' ) || '/' ||
    TO_CHAR( :blk_manual_inv_header.mih_issue_number, '09') );
    ELSE
    IF ( NVL( LENGTH( :blk_manual_inv_header.mih_invoice_prefix), 0 ) = 1 )
    THEN
    PR_insert_cell( :blk_manual_inv_header.mih_invoice_prefix ||
    TO_CHAR( :blk_manual_inv_header.mih_invoice_number, '000000009' ) || '/' ||
    TO_CHAR( :blk_manual_inv_header.mih_issue_number, '09' ) );
    ELSE
    PR_insert_cell( :blk_manual_inv_header.mih_invoice_prefix ||
    TO_CHAR( :blk_manual_inv_header.mih_invoice_number, '00000009' ) || '/' ||
    TO_CHAR( :blk_manual_inv_header.mih_issue_number, '09' ) );
    END IF;
    END IF;
    l_n_bookmark := 34;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    IF ( l_r_items.rownum = 1 )
    THEN
    PR_insert_cell( TO_CHAR( l_n_total_value, '99999999.90') );
    END IF;
    l_n_bookmark := 35;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    IF ( l_r_items.rownum = 1 )
    THEN
    PR_insert_cell( TO_CHAR( l_n_total_tax, '99999999.90' ) );
    END IF;
    l_n_bookmark := 36;
    CLIENT_OLE2.INVOKE( l_t_selection, 'MoveRight', l_t_args_move_right );
    IF ( l_r_items.rownum = 1 )
    THEN
    PR_insert_cell( TO_CHAR( l_n_total_value + l_n_total_tax, '99999999.90' ) );
    END IF;
    END LOOP;
    CLIENT_OLE2.DESTROY_ARGLIST( l_t_args_move_right );
    -- Open merge file
    l_n_bookmark := 37;
    l_t_args := CLIENT_OLE2.CREATE_ARGLIST;
    CLIENT_OLE2.ADD_ARG( l_t_args, l_v_destination_directory||l_v_letter );
    l_t_letter_doc := CLIENT_OLE2.INVOKE_OBJ( l_t_documents, 'Open', l_t_args );
    CLIENT_OLE2.DESTROY_ARGLIST( l_t_args );
    -- Do mail merge
    l_n_bookmark := 38;
    l_t_mail_merge := CLIENT_OLE2.GET_OBJ_PROPERTY( l_t_letter_doc, 'MailMerge');
    l_t_args := CLIENT_OLE2.CREATE_ARGLIST;
    CLIENT_OLE2.INVOKE( l_t_mail_merge, 'Execute', l_t_args );
    CLIENT_OLE2.DESTROY_ARGLIST( l_t_args );
    -- Print
    l_n_bookmark := 39;
    l_t_args := CLIENT_OLE2.CREATE_ARGLIST;
    l_t_merge_doc := CLIENT_OLE2.GET_OBJ_PROPERTY( l_t_application, 'ActiveDocument' );
    CLIENT_OLE2.ADD_ARG( l_t_args, 0 );
    CLIENT_OLE2.INVOKE( l_t_merge_doc, 'PrintOut', l_t_args );
    CLIENT_OLE2.DESTROY_ARGLIST( l_t_args );
    -- Cleanup
    l_n_bookmark := 40;
    IF ( NOT( l_b_debug ) )
    THEN
    l_t_args := CLIENT_OLE2.CREATE_ARGLIST;
    CLIENT_OLE2.ADD_ARG( l_t_args, 0 );
    CLIENT_OLE2.INVOKE( l_t_documents, 'Close', l_t_args );
    CLIENT_OLE2.DESTROY_ARGLIST( l_t_args );
    CLIENT_OLE2.INVOKE( l_t_application, 'QUIT' );
    END IF;
    CLIENT_OLE2.RELEASE_OBJ( l_t_selection );
    CLIENT_OLE2.RELEASE_OBJ( l_t_mail_merge );
    CLIENT_OLE2.RELEASE_OBJ( l_t_source_doc );
    CLIENT_OLE2.RELEASE_OBJ( l_t_letter_doc );
    CLIENT_OLE2.RELEASE_OBJ( l_t_merge_doc );
    CLIENT_OLE2.RELEASE_OBJ( l_t_documents );
    CLIENT_OLE2.RELEASE_OBJ( l_t_application );
    l_n_bookmark := 41;
    SET_APPLICATION_PROPERTY(CURSOR_STYLE,'DEFAULT');
    EXCEPTION
    WHEN FORM_TRIGGER_FAILURE
    THEN
    SET_APPLICATION_PROPERTY(CURSOR_STYLE,'DEFAULT');
    RAISE;
    WHEN OTHERS
    THEN
    PA_lib_msg.PR_others_exception('PA_hci_misc.PR_print_invoice',l_n_bookmark);
    END;
    ---------------------------------

    Some questions:
    Which version of office were you using before? 2003?
    Are the data files on a network, or on your local machine? If they are on a network, can you make a copy of one of them on your local machine and try again?
    Can you open the files directly in Excel? What extension do they have (.xls, or something else?) I am wondering whether access to other file types has been left blocked on your machine but is allowed on your colleague's machine.
    Are you just opening the mail merge main document and seeing this message? If so, do you see the same thing if you start with a new document and try to connect to one of these data sources?
    Can you confirm that the message is about Access even though you are trying to connect to an Excel file?
    (Also, office 2007 has some new stuff - that let's you specify that certain folders are "trusted" . I don't think that ever affected MailMerge but it may be as well to make sure that your documents and data sources are in trusted locations).
    Also worth trying to start Word in "Safe mode" - see, e.g. http://office.microsoft.com/en-gb/word-help/work-with-office-safe-modes-HP010140792.aspx
    Peter Jamieson

  • Word 2007 mail link error

    In Word 2007 Mail Merge ToolsOptionsSave method returns ole2_object class error and terminate the process does not allow
    Does anyone know what can be?

    Some questions:
    Which version of office were you using before? 2003?
    Are the data files on a network, or on your local machine? If they are on a network, can you make a copy of one of them on your local machine and try again?
    Can you open the files directly in Excel? What extension do they have (.xls, or something else?) I am wondering whether access to other file types has been left blocked on your machine but is allowed on your colleague's machine.
    Are you just opening the mail merge main document and seeing this message? If so, do you see the same thing if you start with a new document and try to connect to one of these data sources?
    Can you confirm that the message is about Access even though you are trying to connect to an Excel file?
    (Also, office 2007 has some new stuff - that let's you specify that certain folders are "trusted" . I don't think that ever affected MailMerge but it may be as well to make sure that your documents and data sources are in trusted locations).
    Also worth trying to start Word in "Safe mode" - see, e.g. http://office.microsoft.com/en-gb/word-help/work-with-office-safe-modes-HP010140792.aspx
    Peter Jamieson

  • Default file destination in Microsoft Word 2010 Mail Merge to PDF

    I'm using windows 2010, and Adobe Acrobat X Standard. 
    I have a mail merge template that I created in Microsoft Word 2010 that I use to send out multiple price quotes to customers who are bidding jobs.  When I merge to Adobe PDF everything works properly (everyone receives their unique PDF, etc.), but every time I do this Adobe requires that I select a destination folder for it to send the PDF's it generates that get attatched to the emails. 
    When I save a Word Doc as a PDF it automatically saves it in the same folder at the word document it was created from.  Is there a way I can set up my 'Merge to Adobe PDF' feature to do the same thing when it generates the merged PDF files?  It's just a hastle to map the entire file path of the desination folder every time I send out a quote.
    Thanks for your help!

    I'm using windows 2010, and Adobe Acrobat X Standard. 
    I have a mail merge template that I created in Microsoft Word 2010 that I use to send out multiple price quotes to customers who are bidding jobs.  When I merge to Adobe PDF everything works properly (everyone receives their unique PDF, etc.), but every time I do this Adobe requires that I select a destination folder for it to send the PDF's it generates that get attatched to the emails. 
    When I save a Word Doc as a PDF it automatically saves it in the same folder at the word document it was created from.  Is there a way I can set up my 'Merge to Adobe PDF' feature to do the same thing when it generates the merged PDF files?  It's just a hastle to map the entire file path of the desination folder every time I send out a quote.
    Thanks for your help!

  • 6i Forms Word 2003 Mail Merge

    We have mail merge working from 6i forms with Word 97. We are going to Word 2003, but I am having trouble getting the mail merge to work. The example on Metalink, note 297410.1, seems to be directed at data files in row format. Our data file is in table format. Below is part of our current working code. When it is run in 2003, the merge is not performed. I do not receive any errors. Any suggestions or examples would be greatly appreciated. Thank you.
    PROCEDURE create_AL01 IS
    word_handle ole2.obj_type;
    docs ole2.obj_type;
    doc ole2.obj_type;
    tables ole2.obj_type;
    range ole2.obj_type;
    sel ole2.obj_type;
    NewMailMerge ole2.obj_type;
    arglist ole2.list_type;
    i number;
    <cursor definition>
    BEGIN
    <count of letters for loop>
    word_handle := ole2.create_obj('word.application');
    ole2.set_property(word_handle,'Visible',1);
    docs := ole2.Get_Obj_Property(word_handle,'Documents');
    ole2.invoke(docs,'Add');
    sel := ole2.get_obj_property(word_handle,'Selection');
    range := ole2.get_obj_property(sel,'Range');
    doc := ole2.get_obj_property(word_handle,'ActiveDocument');
    tables := ole2.get_obj_property(doc,'Tables');
    arglist :=ole2.create_arglist;
    ole2.add_arg_obj(arglist,range);
    ole2.add_arg(arglist,i);
    ole2.add_arg(arglist,7);
    ole2.invoke(tables,'Add',arglist);
    ole2.destroy_arglist(arglist);
    FOR AL01_rec in AL01_cur LOOP
    arglist :=ole2.create_arglist;
    ole2.add_arg(arglist, AL01_rec.sys_date);
    ole2.invoke(sel, 'TypeText', arglist);
    ole2.destroy_arglist(arglist);
    ole2.invoke(sel,'MoveRight');
    arglist :=ole2.create_arglist;
    ole2.add_arg(arglist, AL01_rec.name);
    ole2.invoke(sel, 'TypeText', arglist);
    ole2.destroy_arglist(arglist);
    ole2.invoke(sel,'MoveRight');
    arglist :=ole2.create_arglist;
    ole2.add_arg(arglist, AL01_rec.mail_address);
    ole2.invoke(sel, 'TypeText', arglist);
    ole2.destroy_arglist(arglist);
    ole2.invoke(sel,'MoveRight');
    arglist :=ole2.create_arglist;
    ole2.add_arg(arglist, AL01_rec.mail_cityst);
    ole2.invoke(sel, 'TypeText', arglist);
    ole2.destroy_arglist(arglist);
    ole2.invoke(sel,'MoveRight');
    arglist :=ole2.create_arglist;
    ole2.add_arg(arglist, AL01_rec.salute);
    ole2.invoke(sel, 'TypeText', arglist);
    ole2.destroy_arglist(arglist);
    ole2.invoke(sel,'MoveRight');
    arglist :=ole2.create_arglist;
    ole2.add_arg(arglist, AL01_rec.test_date);
    ole2.invoke(sel, 'TypeText', arglist);
    ole2.destroy_arglist(arglist);
    ole2.invoke(sel,'MoveRight');
    ole2.invoke(sel,'MoveRight');
    ole2.invoke(sel,'MoveRight');
    end loop;
    arglist := ole2.create_arglist;
    ole2.add_arg(arglist, 'C:\PROGRAMS\AL01SF.DOC');
    ole2.invoke(doc, 'SaveAs', arglist);
    ole2.destroy_arglist(arglist);
    arglist := ole2.create_arglist;
    ole2.add_arg(arglist, 'C:\PROGRAMS\AL01PRI.DOC');
    ole2.invoke(docs, 'Open', arglist);
    ole2.destroy_arglist(arglist);
    doc := ole2.get_obj_property(word_handle,'ActiveDocument');
    arglist:=OLE2.CREATE_ARGLIST;
    OLE2.INVOKE(doc, 'Activate', arglist);
    OLE2.DESTROY_ARGLIST(arglist);
    NewMailMerge :=OLE2.GET_OBJ_PROPERTY(doc, 'MailMerge');
    arglist:=OLE2.CREATE_ARGLIST;
    OLE2.INVOKE(NewMailMerge, 'Execute',arglist);
    OLE2.DESTROY_ARGLIST(arglist);
    doc := ole2.get_obj_property(word_handle,'ActiveDocument');
    arglist := ole2.create_arglist;
    ole2.add_arg(arglist, 'C:\PROGRAMS\AL01MF.DOC');
    ole2.invoke(doc, 'SaveAs', arglist);
    ole2.destroy_arglist(arglist);
    arglist := OLE2.CREATE_ARGLIST;
    OLE2.ADD_ARG(arglist,0);
    OLE2.Invoke(doc, 'PrintOut', arglist);
    OLE2.Destroy_Arglist(arglist);
    OLE2.INVOKE(docs,'Close');
    OLE2.INVOKE(word_handle,'QUIT');
    END;

    We have mail merge working from 6i forms with Word 97. We are going to Word 2003, but I am having trouble getting the mail merge to work. The example on Metalink, note 297410.1, seems to be directed at data files in row format. Our data file is in table format. Below is part of our current working code. When it is run in 2003, the merge is not performed. I do not receive any errors. Any suggestions or examples would be greatly appreciated. Thank you.
    PROCEDURE create_AL01 IS
    word_handle ole2.obj_type;
    docs ole2.obj_type;
    doc ole2.obj_type;
    tables ole2.obj_type;
    range ole2.obj_type;
    sel ole2.obj_type;
    NewMailMerge ole2.obj_type;
    arglist ole2.list_type;
    i number;
    <cursor definition>
    BEGIN
    <count of letters for loop>
    word_handle := ole2.create_obj('word.application');
    ole2.set_property(word_handle,'Visible',1);
    docs := ole2.Get_Obj_Property(word_handle,'Documents');
    ole2.invoke(docs,'Add');
    sel := ole2.get_obj_property(word_handle,'Selection');
    range := ole2.get_obj_property(sel,'Range');
    doc := ole2.get_obj_property(word_handle,'ActiveDocument');
    tables := ole2.get_obj_property(doc,'Tables');
    arglist :=ole2.create_arglist;
    ole2.add_arg_obj(arglist,range);
    ole2.add_arg(arglist,i);
    ole2.add_arg(arglist,7);
    ole2.invoke(tables,'Add',arglist);
    ole2.destroy_arglist(arglist);
    FOR AL01_rec in AL01_cur LOOP
    arglist :=ole2.create_arglist;
    ole2.add_arg(arglist, AL01_rec.sys_date);
    ole2.invoke(sel, 'TypeText', arglist);
    ole2.destroy_arglist(arglist);
    ole2.invoke(sel,'MoveRight');
    arglist :=ole2.create_arglist;
    ole2.add_arg(arglist, AL01_rec.name);
    ole2.invoke(sel, 'TypeText', arglist);
    ole2.destroy_arglist(arglist);
    ole2.invoke(sel,'MoveRight');
    arglist :=ole2.create_arglist;
    ole2.add_arg(arglist, AL01_rec.mail_address);
    ole2.invoke(sel, 'TypeText', arglist);
    ole2.destroy_arglist(arglist);
    ole2.invoke(sel,'MoveRight');
    arglist :=ole2.create_arglist;
    ole2.add_arg(arglist, AL01_rec.mail_cityst);
    ole2.invoke(sel, 'TypeText', arglist);
    ole2.destroy_arglist(arglist);
    ole2.invoke(sel,'MoveRight');
    arglist :=ole2.create_arglist;
    ole2.add_arg(arglist, AL01_rec.salute);
    ole2.invoke(sel, 'TypeText', arglist);
    ole2.destroy_arglist(arglist);
    ole2.invoke(sel,'MoveRight');
    arglist :=ole2.create_arglist;
    ole2.add_arg(arglist, AL01_rec.test_date);
    ole2.invoke(sel, 'TypeText', arglist);
    ole2.destroy_arglist(arglist);
    ole2.invoke(sel,'MoveRight');
    ole2.invoke(sel,'MoveRight');
    ole2.invoke(sel,'MoveRight');
    end loop;
    arglist := ole2.create_arglist;
    ole2.add_arg(arglist, 'C:\PROGRAMS\AL01SF.DOC');
    ole2.invoke(doc, 'SaveAs', arglist);
    ole2.destroy_arglist(arglist);
    arglist := ole2.create_arglist;
    ole2.add_arg(arglist, 'C:\PROGRAMS\AL01PRI.DOC');
    ole2.invoke(docs, 'Open', arglist);
    ole2.destroy_arglist(arglist);
    doc := ole2.get_obj_property(word_handle,'ActiveDocument');
    arglist:=OLE2.CREATE_ARGLIST;
    OLE2.INVOKE(doc, 'Activate', arglist);
    OLE2.DESTROY_ARGLIST(arglist);
    NewMailMerge :=OLE2.GET_OBJ_PROPERTY(doc, 'MailMerge');
    arglist:=OLE2.CREATE_ARGLIST;
    OLE2.INVOKE(NewMailMerge, 'Execute',arglist);
    OLE2.DESTROY_ARGLIST(arglist);
    doc := ole2.get_obj_property(word_handle,'ActiveDocument');
    arglist := ole2.create_arglist;
    ole2.add_arg(arglist, 'C:\PROGRAMS\AL01MF.DOC');
    ole2.invoke(doc, 'SaveAs', arglist);
    ole2.destroy_arglist(arglist);
    arglist := OLE2.CREATE_ARGLIST;
    OLE2.ADD_ARG(arglist,0);
    OLE2.Invoke(doc, 'PrintOut', arglist);
    OLE2.Destroy_Arglist(arglist);
    OLE2.INVOKE(docs,'Close');
    OLE2.INVOKE(word_handle,'QUIT');
    END;

  • Word 2010 Mail Merge Missing Data

    I have a large Excel data file:
    1725 records, 31 columns, 1.74MB total size.
    Other data:
    Windows 7 (64 bit)
    Word/Excel 2010 Version: 14.0.7116.5000 (32-bit)
    I am running a standard mail merge on a filtered subset of the data (112 records). At least one of the merge fields is RANDOMLY missing from the merge document. This is clearly evident because this is a field that is populated for EVERY record. I don't believe
    that I have every seen this behavior before.
    Can someone please direct me to the cause of this or a work-around?

    There are numerous possible reasons. The most likely is that the column concerned has missed data types (e.g. numbers plus text and/or dates). Some explanation:
    By default, Word (2002 & later) uses the OLE DB provider to get merge data from an Excel workbook. The basic problem with using the OLE DB provider is that it's designed to return data in a way that is compatible with Access and other relational database
    packages. Access requires a specific data type for each field, and every value in that field must have only that data type. In Excel, however, cells in a column (field) can have different data types. When the OLE DB provider gets data from an Excel column
    with mixed data types, it has to determine the data type for each column. The first 8 records are used for that (the 8 can be changed in the Windows Registry, but it’s not advisable to do so). Records that don’t conform to the determined data type are liable
    to not be handled correctly. To complicate matters, for historical reasons, there are two text data types: "text" (up to 255 characters) and "memo" (can be longer than that).
    Some common mailmerge issues arising out of this include:
    • Numbers but not text or dates being output for some records; and
    • Text data being truncated at 255 characters.
    Ideally, one would ensure each field has only one data type. That way, the problem wouldn't arise.
    Workarounds include:
    • Inserting a dummy first record containing data in the format that is not being output correctly; or
    • Reordering the data so the first record has content in the format that is not otherwise being output correctly.
    Thus, if numbers appear but text and/or dates don’t, ensure the first record for that field has text or a date. Similarly, if text over 255 characters is being truncated, ensure the first record for that field contains more than 255 characters.
    Cheers
    Paul Edstein
    [MS MVP - Word]

  • Why doesn't mail merge in Pages reflect changes made to the numbers source document?

    When using mail merge in a Pages envelope document, changes made to its Numbers address source document are not reflected.  I have to create a whole new Pages envelope document and choose the Numbers address source document merge fields all over again.
    I never had any trouble doing this with Word and Exell!  
    What am I doing wrong?

    Denney,
    Mail Merge from Numbers works just as you are trying to use it.
    You create a Numbers document with the proper layout for merging.
    Enter the data in teh numbers document and Save it.
    You create a Pages Document to merge into and create the links to the Numbers document.
    You Edit > Mail Merge in Pages.
    To merge again from the Numbers document, make the necessary edits, Save the Numbers document and do the mail merge again in the Pages document that you created for that purpose. The only problem that normally arises is that we forget to Save the Numbers document after editing.
    Jerry

  • Do mail merge with group from address book or other file?

    Is there a way to have Mail do a merge with a spreadsheet, a Filemaker file or the Address Book ( a group) so that every email looks personalized? Dear <name>,
    blah, blah, blah
    I need to send out an email to about 150 faculty and staff. Messages sent to a list often get ignored or deleted unread. I need these to be read.
    Thx
    G5 Dual 2.7 GHz   Mac OS X (10.4.7)  

    What is the exact message you get when sending fails -- does it say there are one or more invalid addresses, or what?
    Having a name in the list without email address or possibly one separated by comma between last and first might result similarly in an invalid address, and Mail will likely refuse to send to any. But if the message is from the SMTP, that might depend on the provider's policies for that.
    Ernie

  • Mail merge from Word to Excel locks the excel document

    Previously, a friend of mine would run his business like this:
    Open a client database (excel file), open N number of word docs that were mail merge docs to the excel file.  He could then make changes to the excel file and see those changes reflected in real time in the opened word mail merge documents.  He
    could also save the excel document while the word docs were open without problem.
    Now, changes to excel are not shown in word, and saving the excel doc while the word mail merge documents are open produces a sharing violation (winword has a handle on the excel file).
    I've reproduced his problems.  We are both using Office 2010, and Windows 7.
    I've tested turning off indexing on the files, and also tried disabling my anti virus. 
    If I save the excel file as a 97-2003 file (.xls), then I don't have most of these issues.
    Is there anyway to avoid the file lock when using the excel document as a 2010 xlsx?  Why would it work fine if I connect to an old document, but not work with the 2010 version?

    I have a similar problem, which might be related. I use an Excel 2010 spreadsheet (.xlsx) as a data source to mail merge with document templates (.dotx) in Word 2010. I can save changes to the Excel spreadsheet without any problems until open a Word template
    and try to use the Excel spreadsheet as the data source (Mailings -> Select Recipients -> Using Existing List). Two problems occur when I run that merge. First, any recent changes to the spreadsheet don't appear in the document templates. Second, Excel
    throws error messages when I try to save the spreadsheet. Specifically:
    1. Excel tells me that "Your changes could not be saved to '[FILENAME].xlsx' because of a sharing violation. Try saving to a different file."
    2. When I click OK, it tries to save the spreadsheet to a randomly-named file without an extension, and tells me "The file you are trying to open, '53F11100' (or some other seemingly-random file name) is in a different format than specified by the file extension.
    Verify that the file is not corrupted and is from a trusted source before opening the file. Do you want to open the file now?" Excel gives me a yes/no option, either requires me to resave the file under a different name.
    At this point, I can only save the spreadsheet under a different file name unless I close out of MS Office 2010 entirely, make a duplicate of the spreadsheet using Windows, and begin using the new copy instead of the old. I'm using Windows Vista SP2, and don't
    recall any specific action on my part prompting this change, but it began happening in the last few weeks. Any guidance would be a huge help.
    Thanks in advance,
    Prescott

  • Access 2013 crashes after mail merge in Word 2013

    We have several Word templates that query an Access database to populate themselves. After the mail merge is complete, when we close Word then Access immediately crashes every time. This started after upgrading from Office 2003 to 2013. We tried updating
    the Word Doc to 2013 but then it would not connect to the data source at all. Last, we also tried to Compact and Repair the database with no luck.
    We searched for an Access Hot Fix but could not find anything that matches our issue. Any assistance would be greatly appreciated.

    Use a table or query as the data source
    Open the source database, and in the Navigation Pane, select the table or query that you want use as the mail merge data source.
    On the External Data tab, in the Export group, click
    More , and then click Merge it with Microsoft Office Word .
    The Microsoft Word Mail Merge Wizard starts.
    Select whether you want to create the link in an existing document or in a new document, and then click
    OK.
    If you chose to link to an existing document, in the Select Microsoft Word Document dialog box, locate and select the file, and then click
    Open.
    Word starts. Depending on your choice, Word opens either the document you specified or a new document.
    In the Mail Merge pane, under Select document type, click
    Letters and then click Next: Starting document to continue to step 2.
    In step 2, click Next: Select recipients.
    In step 3, you create the link between the data source in Access and the Word document. Because you started the wizard from Access, this link is created automatically. Under
    Select recipients, note that Use an existing list is selected, and the name of your data source is displayed under
    Use an existing list.
    Click Edit recipient list if you want to customize the contents of the table or query.
    You can filter, sort, and validate the data. Click OK to continue.
    Click Next: Write your letter to continue. Follow the remaining instructions in the
    Mail Merge pane, and in step 5, click Next: Complete the merge.
    Other ways to use a table or query as the data source
    You can specify a table or query as a data source in additional ways. For example, you can export the table or query from Access to an ODBC database, a Microsoft Office Excel 2013 file, a text file, or any other file format that is compatible with Word,
    and then link to the resulting file by using the Word Mail Merge Wizard.
    If you have not already exported the table or query , do so. In Access, in the Navigation Pane, select the table or query that you want to use, and on the
    External Data tab, in the Export group, click the format you want to export to, and then follow the instructions.
    In Word, if the Mail Merge pane is not displayed, on the
    Mailings tab, in the Start Mail Merge group, click the arrow under
    Start Mail Merge, and then click Step by Step Mail Merge Wizard. The
    Mail Merge pane appears.
    In step 3 of the Mail Merge pane, under Use an existing list, click
    Browse or Edit recipient list.
    In the Select Data Source dialog box, specify the data file that you created in Access, and then click
    Open.
    Follow the instructions in any dialog boxes that follow. In the Mail Merge Recipients dialog box, review and customize the contents of the file. You can filter, sort, and validate the contents before you continue.
    Click OK, and then click Next: Write your letter in the
    Mail Merge pane. For more instructions on customizing your mail merge, see Word Help.

  • Export and split mail merge to Word Documents

    Hi there,
    I have a mail merge which creates one very long Pages document. I need to split the pages document into separate MS Word documents. Any suggestions?

    I should specify that I am dealing with a large number of documents and am looking for an automated solution. Essentially I want to do a mail merge but end up with individual MS Word documents for each person in the mail merge.
    So if I have 3 people:
    Alex
    Bob
    Cathy
    And I have one document which gets mail merged, I wanted to end up with
    Alex.doc
    Bob.doc
    Cathy.doc

  • Save as PDF option in MS Word 2007 does not create TOC links

    Hello All,
    i am using Microsoft Office Word 2007 to create How to Guides, Installation Manuals, and other technical documents. I send these documents to customer in PDF format.
    When i use "Save as PDF" option of MS Word 2007 to generate PDF file, it creates the PDF but without TOC links. TOC entries are there but hyperlinks are missing.
    Can anyone please provide me a solution to work around this issue.
    Thanks in Advance.
    Anax Thomas
    http://www.msentouragerecovery.com

    Hi,
    It seems that you are trying to insert a Hyperlink in you document which you want to save as a PDF file from Word 2007,
    but when you open the PDF file there is no such a Hyperlink but only the website address.
    If there is anything misunderstanding, please feel free to let me know.
    Try this:
    When you have inputted the website address, enter an “Space” or “Enter” behind it to make it
    turn into a Hyperlink before you save the document into PDF file.
    Sincerely,
    Fangfang

  • MS-Word mail merge funcionality

    I would like to have an editor with functionalities similar to MS-Word's mail merge. My website should be able to publish templates with dynamic data, from an external database. Can I have it with Muse or any other Adobe product ?

    I have the same requirement...ms-word mail merge thru Java(before uploading to server..well that is what I think of doing).
    1)Any success with this?
    2)How did you do that in ASP? Any links you could suggest?
    3)What did you use with the ASP setup to fax out(meaning the fax server)
    Is it possible to create a word document with dynamic
    contents (thru a template) using jsp or java.
    Actually, I want to use mail merge facility to create
    a Word Document to fax in jsp.
    I know it is possible in asp/vb. But no idea,,, How
    can it done in jsp???????

  • How to create mail merge(feature in word) in adobe pdf and programmatically find and replace these t

    I am very new to adobe.I am required to do the following and am very confused.The scenario is as follows:
    I am required to create a letter template (using adobe designer) where name and few other details will be tags(which needs to be replaced by actual values according to the particular customer later on).We can create such a feature in word using mail merge feature available there.How do we do the same in pdf??Can it be done using adobe designer 7.0???If so,how?
    After I create this template,I am required to write a javascript or a VB program to access this pdf template and find and replace these tags with the actual values and generate a pdf document.Somebody told me that this is to be done using adobe document server(ADS). Can this be done??If so,how?If not what is the alternative product in adobe?
    There are so many adobe products that i am totally at sea and not able to figure out which to use and how.
    Please help me at the very earliest.
    Thanks in advance.
    regards,
    Sowmya

    Let me thank u for a prompt reply but I guess I still need ur help before I accomplish what I set out to do.
    As per your reply I used Forms API in my vb program and it is accessing the fields but I am not able to change the property of the fields.
    I created the pdf form using adobe designer 7.0 and have created a floating field which I want to populate using my code.This is invisible in the pdf template but I when I set the value for it using vb code I need to change its property to visible.
    But when I try to change the "NoViewFlag" property, I get an error as follows:
    Runtime error'-2147220988(80040204)
    Document's Security Settings prohibit the operation being performed
    Please give your suggestions.
    2.Another question is how do I differentiate floating text field and ordinary text field in vb code because the type of both is displayed as text ??
    Thanks again.
    regards,
    Sowmya
    I am putting my code below for ur viewing.

Maybe you are looking for