4D v16WP INSERT DOCUMENT |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16
WP INSERT DOCUMENT
|
WP INSERT DOCUMENT ( rangeObj ; wpDoc ; mode {; rangeUpdate} ) | ||||||||
Parameter | Type | Description | ||||||
rangeObj | Object |
![]() |
4D Write Pro target range | |||||
wpDoc | Object |
![]() |
4D Write Pro document to insert | |||||
mode | Longint |
![]() |
Insertion mode | |||||
rangeUpdate | Longint |
![]() |
Range update mode | |||||
The WP INSERT DOCUMENT command inserts the wpDoc document in the rangeObj range according to the specified insertion mode and rangeUpdate parameter.
In rangeObj, pass a valid 4D Write Pro standard range object. A rangeObj is a part of a 4D Write Pro document; it can be created using the , WP Get bookmark range or WP Get range commands.
The inserted wpDoc document can be any 4D Write Pro document object created using the WP New or WP Import document command. Only the body children elements are inserted (sections and bookmarks in the destination range are preserved). In addition, the elements are copied, so wpDoc can be re-used several times.
In the mode parameter, pass one or a combination of the following constants from the 4D Write Pro Constants theme to indicate the insertion mode to be used for the document in the destination rangeObj range:
Constant | Type | Value | Comment |
wk append | Longint | 2 | Insert contents at end of range |
wk prepend | Longint | 1 | Insert contents at beginning of range |
wk replace | Longint | 0 | Replace range contents |
You can combine one of the previous constants with the following insertion options:
Constant | Type | Value | Comment |
wk freeze expressions | Longint | 64 | Freeze expressions at the moment of the insertion |
wk inherit style from paragraph | Longint | 32 | Inserted contents inherits character style from the paragraph default character style. |
wk keep paragraph styles | Longint | 128 | Keep destination paragraph styles |
In the optional rangeUpdate parameter, you can pass one of the following constants to specify whether or not the inserted contents are included in the resulting range:
Constant | Type | Value | Comment |
wk exclude from range | Longint | 1 | Inserted contents not included in updated range |
wk include in range | Longint | 0 | Inserted contents included in updated range (default) |
Note: If you do not pass a rangeUpdate parameter, by default the inserted contents are included in the resulting range.
You want to replace the contents of a document by the text selected in another one:
$tempRange:=WP Get selection(WPTemplate) //we retrieve the user selection in the WPTemplate document
$doctoCopy:=WP New($tempRange) //create a new document based on WPTemplate
WP INSERT DOCUMENT(WPDoc;$doctoCopy;wk replace) //replace contents of WPDoc by the contents of the new document
You have defined a template document with different preformatted parts, each of them being stored as a bookmark. When producing a final document from the template, you can extract any bookmark as a new document and insert it in the final document.
ARRAY TEXT($_BookmarkNames;0)
WP GET BOOKMARKS([TEMPLATES]WP;$_BookmarkNames) //get the bookmarks from the template
$targetRange:=WP New //create an empty document (will be the final document)
$p:=Find in array($_BookmarkNames;"Main_Header") //handle the main header part
If($p>0)
$Range:=WP Get bookmark range(WParea;$_BookmarkNames{$p}) //select the range
$RangeDoc:=WP New($Range) //create a new document from the range
WP INSERT DOCUMENT($targetRange;$RangeDoc;wk append+wk freeze expressions) //wk append=after replacement, $targetRange is equal to end of replaced text
End if
Download HDI database
WP INSERT BREAK
WP INSERT PICTURE
WP New
Product: 4D
Theme: 4D Write Pro Language
Number:
8792
Created: 4D v16
4D Write Pro Reference ( 4D v16)