c# convert pdf to image ghostscript : Change password on pdf document Library control class asp.net web page .net ajax e2296117-part793

Controlling Window, Block, and Region Behavior    13-21
Testing Tab Page Properties
The Oracle Forms Set/Get_tab_page_property (canvas.tabpage...) built-in routines use 
these properties:
ENABLED
LABEL
VISIBLE
Use the Get_Tab_Page_Property routine for testing whether a tab is enabled or 
disabled:
DECLARE
my_tab_page_id   TAB_PAGE;
my_tab_enabled        VARCHAR2(32);
BEGIN
my_tab_page_id := FIND_TAB_PAGE('my_tab_page_1');
my_tab_enabled := GET_TAB_PAGE_PROPERTY (my_tab_page_id, ENABLED) 
IF my_tab_enabled= 'TRUE' THEN ...
Setting and Getting Topmost Tab Pages
This example sets the topmost tab page (that is, the displayed tab page) of the 
TAB_ENTITY_REGIONS tab canvas to be the MY_SECOND_TAB_PAGE tab page:
set_canvas_property('TAB_ENTITY_REGIONS', topmost_tab_page,
'MY_SECOND_TAB_PAGE'); 
You can also retrieve the name of the current tab page:
current_tab        VARCHAR2(30) := 
get_canvas_property('TAB_ENTITY_REGIONS',
topmost_tab_page);
Coding Alternative Region Behavior
In Oracle E-Business Suite Release 12, alternative regions are replaced by tabbed 
regions. You should implement tabbed regions for all new code.
Alternative Regions
A block with multiple regions that cannot be rendered simultaneously uses a series of 
stacked canvases to display each region, one at a time, within a single region boundary. 
These stacked regions are called "Alternative Regions". 
For more information, see the Oracle E-Business Suite User Interface Standards for 
Forms-Based Products.
Each alternative region has a poplist control element containing all possible regions for 
that block. 
Change password on pdf document - C# PDF Password Library: add, remove, edit PDF file password in C#.net, ASP.NET, MVC, WinForms, WPF
Help to Improve the Security of Your PDF Document by Setting Password
convert pdf password protected to word online; add copy protection pdf
Change password on pdf document - VB.NET PDF Password Library: add, remove, edit PDF file password in vb.net, ASP.NET, MVC, WinForms, WPF
Help to Improve the Security of Your PDF Document by Setting Password
add password to pdf online; pdf password online
13-22    Oracle E-Business Suite Developer's Guide
Behavior of the Alternative Region Poplist 
Alternative region poplists should behave according to the following standards:
The Alternative Region poplist should have the Query Allowed attribute set to Yes, 
so that it can be used while the block is in ENTER-QUERY mode. 
KEY-MENU invokes an LOV that allows the user to select from the same list of 
choices as in the control poplist. The title of this LOV is "Regions." You need this 
function for keyboard compatibility because the control poplist is not otherwise 
accessible except via the mouse. 
Example: Coding an Alternative Region
Block LINES has some fields on a content canvas ORDER. The last of these fields is 
ITEM. 
LINES has alternative regions on canvases LINES_PRICE and LINES_ITEM. The 
regions are accessible only if LINES.ITEM is not null. The first item of LINES_PRICE is 
LIST_PRICE. The first item of LINES_ITEM is DESCRIPTION.
1. 
Create a poplist in a control block to select the current region. The poplist should be
queryable and non-navigable. The poplist should display a friendly name for each 
region with a corresponding value equal to the region's canvas name.
The block CONTROL has a queryable, non-navigable poplist named 
LINES_REGIONS (block name plus _REGIONS) that contains the following values, 
with the internal value following the displayed value: Price Information 
(LINES_PRICE), Item Information (LINES_ITEM).
2. 
Visit the CONTROL block:
At form startup, you must visit the block containing the control poplist to 
instantiate it:
Create a text item called DUMMY as the first item in the CONTROL block. 
Make the text item Visible, Enabled and Keyboard Navigable, Position 0,0, 
WD=0, HT=0, and +-Length=1. Place it on the first canvas to be displayed.
In WHEN-NEW-FORM-INSTANCE, make two GO_BLOCK() calls, one to the 
CONTROL block and another to the First Navigation Block.
Make sure you do similar GO_BLOCK calls in the code where you handle 
KEY-CLRFRM. 
3. 
Setting the First Displayed Region:
Within Oracle Forms Designer, designate the first stacked canvas of the set of 
alternative regions to show as displayed; make all other canvases in the set not 
Online Change your PDF file Permission Settings
to make it as easy as possible to change your PDF You can receive the locked PDF by simply clicking download and If we need a password from you, it will not be
adding password to pdf file; copy from protected pdf
VB.NET PDF File Compress Library: Compress reduce PDF size in vb.
Document and metadata. outputFilePath = Program.RootPath + "\\" 3_optimized.pdf"; 'create optimizing TargetResolution = 150.0F 'to change image compression
adding password to pdf; pdf password security
Controlling Window, Block, and Region Behavior    13-23
displayed to improve startup performance.
You must sequence the stacked canvases carefully by ordering the canvases within 
the list in the Oracle Forms Object Navigator (the first stacked canvas in the list is 
the first stacked canvas displayed). In addition, you must sequence your items to 
have the correct order when a user tabs through the fields on the alternative 
regions.
Tip: When stacked canvases are referenced, their sequence may be 
unpredictable. In this case, issue a SHOW_VIEW at form startup, or
whenever the window is first displayed, to force the proper canvas 
to render.
Make sure your stacked canvas views are all exactly the same size and occupy 
exactly the same space on the content canvas.
4. 
Create your item handler procedures to control which region displays as in the 
following example. Remember, in our example form, we want to disallow access to 
the regions unless the field LINES.ITEM is not null:
C# PDF File Compress Library: Compress reduce PDF size in C#.net
C#.NET DLLs: Compress PDF Document. Program.RootPath + "\\" 3_optimized.pdf"; // create optimizing TargetResolution = 150F; // to change image compression
break password pdf; add password to pdf file without acrobat
C#: How to Set Your Web Document Viewer Width and Height
Convert Jpeg to PDF; Merge PDF Files; Split PDF Document; Remove Password from PDF; Change PDF Permission Settings. FREE TRIAL: HOW TO:
convert password protected pdf to word online; break password on pdf
13-24    Oracle E-Business Suite Developer's Guide
PACKAGE BODY control IS 
g_canvas_name  VARCHAR2(30) := null; 
PROCEDURE lines_regions(event varchar2) IS 
target_canvas_name VARCHAR2(30); 
curr_canvas_name VARCHAR2(30) :=         
get_item_property(:system.cursor_item,
ITEM_CANVAS); 
BEGIN 
IF (event = 'WHEN-NEW-ITEM-INSTANCE') THEN  
-- Check if the poplist and the canvas are out of synch  
-- to prevent flashing if they are not.   
IF  ((curr_canvas_name in ('LINES_PRICE', 'LINES_ITEM')) AND
(curr_canvas_name != :control.lines_regions)) THEN 
:control.lines_regions := curr_canvas_name; 
g_canvas_name := curr_canvas_name; 
END IF; 
ELSIF (event = 'WHEN-LIST-CHANGED') THEN 
target_canvas_name := :control.lines_regions; 
-- The following is optional code to disallow access  
-- to certain regions under certain conditions
-- Check that the region is accessible.  Always allow access
-- during queries. 
IF (:SYSTEM.MODE = 'ENTER-QUERY') THEN 
null; 
ELSE 
IF (:lines.item is null) THEN 
FND_MESSAGE.SET_NAME('OE', 'OE_ENTER_ITEM_FIRST'); 
FND_MESSAGE.ERROR; 
:control.lines_regions := g_canvas_name; 
RAISE FORM_TRIGGER_FAILURE; 
END IF; 
-- End of optional code
END IF; 
-- Display the region.  If in the same block, go to the
-- first item in the region.  
IF curr_canvas_name in ('LINES_PRICE', 'LINES_ITEM') THEN 
hide_view(curr_canvas_name); 
END IF; 
show_view(target_canvas_name); 
IF (:system.cursor_block = 'LINES') THEN  
IF (target_canvas_name = 'LINES_PRICE') THEN 
-- Go to the first item in the canvas LINES_PRICE
go_item('lines.list_price'); 
ELSIF (target_canvas_name = 'LINES_ITEM') THEN 
-- Go to the first item in the canvas LINES_ITEM
go_item('lines.description'); 
END IF; 
END IF; 
g_canvas_name := target_canvas_name; 
ELSE 
fnd_message.debug('Invalid event passed to
control.lines_regions'); 
END IF; 
END lines_regions; 
END control; 
After the user displays the LOV via KEY-MENU and chooses a value from the list, 
the WHEN-LIST-CHANGED handler switches the regions.
C#: How to Draw and Customize Annotation in HTML5 Document Viewer
Convert Jpeg to PDF; Merge PDF Files; Split PDF Document; Remove Password from PDF; Change PDF Permission Settings. FREE TRIAL: HOW TO:
acrobat password protect pdf; convert protected pdf to word online
C# PDF Page Rotate Library: rotate PDF page permanently in C#.net
Empower C# Users to Change the Rotation Angle of PDF File Page Using C# Able to rotate page in PDF document to 90,180,270 degree in both clockwise and
pdf password remover online; change password on pdf file
Controlling Window, Block, and Region Behavior    13-25
5. 
Call the following triggers:
Trigger: Block-level WHEN-NEW-ITEM-INSTANCE on the LINES block:
CONTROL.LINES_REGIONS('WHEN-NEW-ITEM-INSTANCE');
Trigger: Block-level KEY-MENU on the LINES block (Execution Hierarchy: 
Override):
IF APP_REGION.ALT_REGIONS('CONTROL.LINES_REGIONS') THEN
CONTROL.LINES_REGIONS('WHEN-LIST-CHANGED');
END IF;
Trigger: Item-level WHEN-LIST-CHANGED on CONTROL.LINES_REGIONS.
CONTROL.LINES_REGIONS('WHEN-LIST-CHANGED');
These triggers should fire in ENTER-QUERY mode.
Controlling Records in a Window
This section discusses
Duplicating Records
Why Duplicate Record is Disabled by Default
By default, duplicate record is disabled at the form level. There are several reasons for 
this:
The special column ROW_ID is duplicated and must be manually exempted if it 
exists
The record is marked as valid even through the items may contain time-sensitive 
data that is no longer valid
Defaults are overridden
In many blocks, Duplicate Record makes no sense (modal dialogs, find blocks, etc.)
For any block where you want to enable Duplicate Record, you must write code. You 
must process unique keys, possibly reapply defaults, and confirm that copied data is 
still valid. None of this is done by default, and this can lead to errors or data corruption.
In general, duplicate all item values, even if the item value must be unique. The user 
may wish to create a unique value very similar to the previous value.
Do not override a default if
C# Word - Process Word Document in C#
easily complete various Word document processing implementations using C# demo codes, such as add or delete Word document page, change Word document pages order
convert protected pdf to word document; adding a password to a pdf file
C# PDF Page Move Library: re-order PDF pages in C#.net, ASP.NET
program. Able to adjust and change selected PDF document page. Enable C# users to move, sort and reorder all PDF page in preview. Support
add password to pdf document; password protected pdf
13-26    Oracle E-Business Suite Developer's Guide
The item cannot be modified by the user
The item must contain a specific value for a new record
The item is a sequential number and the default is the correct value most of the time
Example
A block order has items order_number and order_date which are defaulted from the 
sequence order_S and from SYSDATE respectively, and which cannot be modified by 
the user. The item status should contain "Open" for a new order, but the user can change
the Status to "Book" at any time to book the order.
1. 
Create your event handler procedures as follows:
PACKAGE BODY order IS
PROCEDURE KEY_DUPREC IS
CURSOR new_order_number IS SELECT order_S.nextval
FROM sys.dual;
BEGIN
DUPLICATE_RECORD;
open new_order_number;
fetch new_order_number into :order.order_number;
close new_order_number;
:order.status : = 'Open';
:order.order_date := FND_STANDARD.SYSTEM_DATE;
:order.row_id := null;
END KEY_DUPREC;
END order;
2. 
Call your event handler procedures in:
Trigger: KEY-DUPREC on order:
order.KEY_DUPREC;
Renumbering All Records in a Window
To renumber an item sequentially for all records on the block, create a user-named 
trigger to increment the sequence variable and set the sequence item. Use the procedure
APP_RECORD.FOR_ALL_ RECORDS to fire the trigger once for each record.
To number an item sequentially as records are created, create a variable or item to 
contain the sequence number. Create a WHEN-CREATE- RECORD trigger to increment
the sequence variable and default the sequence item. However, if you want to renumber
all the records in a window, use the procedure APP_RECORD.FOR_ALL_RECORDS.
If you are renumbering your items after a query or commit, you may wish to reset the 
record status so that the record is not marked as changed.
Example 
A block lines has item line_number. When a record is deleted, line_number must be 
Controlling Window, Block, and Region Behavior    13-27
renumbered.
1. 
Create your item handler procedures as follows:
PACKAGE BODY lines IS
line_number_seq number := 0;
PROCEDURE delete_row IS
BEGIN
line_number_seq := 0;
APP_RECORD.FOR_ALL_RECORDS('reseq_line_number');
END delete_row;
END lines;
2. 
Create a user-defined trigger RESEQ_LINE_NUMBER as follows:
lines.line_number_seq := lines.line_number_seq + 1;
:lines.line_number := lines.line_number_seq;
3. 
Call your item handler procedures in:
Trigger: KEY-DELETE: 
lines.line_number('KEY-DELETE');
Warning: Be aware of the consequences of this type of processing. 
Specifically, consider the following points:
If a very large number of records are queried in a block, looping 
through them one at a time can be very slow.
Not all the records that could be in the block may be in the current 
query set if you allow the user to enter the query.
If you are changing a value that is part of a unique key, you may 
get errors at commit time because the record currently being 
committed may conflict with another already in the database, even 
though that record has also been changed in the block.
Passing Instructions to a Form
To pass information when navigating from one form to another when both forms are 
already open, use the WHEN-FORM-NAVIGATE trigger. You do not code this trigger 
directly; instead pass the information through global variables.
To use this trigger, populate a global variable called 
GLOBAL.WHEN_FORM_NAVIGATE with the name of a user-named trigger. When a 
form is navigated to, this trigger fires. 
The WHEN-FORM-NAVIGATE trigger fires upon programmatically navigating to a 
form using the GO_FORM built-in. Accordingly, this trigger is referenced into all forms.
13-28    Oracle E-Business Suite Developer's Guide
Querying an Item
It often makes sense to navigate to a form and query on a specific item. For example, 
suppose you have an Order Entry form ORDERS and a Catalog form CATALOGS. You 
want to navigate from the ORDERS form to CATALOGS and query up a specific part 
number. 
In the ORDERS form, create a global variable called GLOBAL.PART_NUMBER, 
and populate it with the value you want to query.
In the ORDERS form, create a global variable called 
GLOBAL.WHEN_FORM_NAVIGATE. Populate this variable with the string 
"QUERY_PART_NUMBER". 
Create a user-named trigger in the CATALOGS form, "QUERY_PART_NUMBER". 
In this trigger, enter query mode by calling EXECUTE_QUERY.
Create a PRE-QUERY trigger in the CATALOGS form that calls 
copy('GLOBAL.PART_NUMBER, 'PARTS_BLOCK.PART_ NUMBER'). Then call 
copy('','GLOBAL.PART_NUMBER'). When there is a value in 
GLOBAL.PART_NUMBER, it becomes part of the query criteria.
Enabling Query Behavior    14-1
14
Enabling Query Behavior
Overview of Query Find
There are two implementations for Query Find (also known as View Find). One 
implementation shows a Row-LOV that shows the available rows and allows you to 
choose one. The other implementation opens a Find window, which shows you the 
fields the user is likely to want to use for selecting data. 
Use only one implementation for a given block. All queryable blocks within your form 
should support Query Find. The Oracle E-Business Suite User Interface Standards for 
Forms-Based Products describe what situations are better served by the two 
implementations. 
Raising Query Find on Form Startup 
If you want a Row-LOV or Find window to raise immediately upon entering the form, 
at the end of your WHEN-NEW-FORM- INSTANCE trigger, call: 
EXECUTE_TRIGGER('QUERY_FIND'); 
This will simulate the user invoking the function while in the first block of the form.
Implementing Row-LOV
To implement a Row-LOV, create an LOV that selects the primary key of the row the 
user wants into a form parameter, and then copy that value into the primary key field in
the results block right before executing a query.
This example uses the DEPT block, which is based on the DEPT table, and consists of 
the three columns DEPTNO, DNAME and LOC. This table contains a row for each 
department in a company. 
14-2    Oracle E-Business Suite Developer's Guide
Create a Parameter for Your Primary Key
Create a form parameter(s) to hold the primary key(s) for the LOV. If the Row-LOV is 
for a detail block, you do not need a parameter for the foreign key to the master block 
(the join column(s)), as you should include that column in the WHERE clause of your 
record group in a later step. Set the datatype and length appropriately.
For example, for the DEPT block, create a parameter called DEPTNO_QF. 
Create an LOV
Create an LOV that includes the columns your user needs to identify the desired row. If 
the Row-LOV is for a detail block, you should include the foreign key to the master 
block (the join column(s)) in the WHERE clause of your record group. Return the 
primary key for the row into the parameter. 
For our example, create an LOV, DEPT_QF, that contains the columns DEPTNO and 
DNAME. Set the return item for DEPTNO into parameter DEPTNO_QF. Although the 
user sees DNAME , it is not returned into any field. 
Create a PRE-QUERY Trigger
Create a block-level PRE-QUERY trigger (Execution Hierarchy: Before) that contains: 
IF :parameter.G_query_find = 'TRUE' THEN
<Primary Key> := :parameter.<Your parameter>; 
:parameter.G_query_find := 'FALSE';
END IF; 
For multi-part keys, you need multiple assignments for the primary key. 
The parameter G_query_find exists in the TEMPLATE form. 
For the Dept example, your PRE-QUERY trigger contains: 
IF :parameter.G_query_find = 'TRUE' THEN
:DEPT.DEPTNO := :parameter.DEPTNO_QF
:parameter.G_query_find := 'FALSE';
END IF; 
Create a QUERY_FIND Trigger
Finally, create a block-level user-named trigger QUERY_FIND on the results block 
(Execution Hierarchy: Override) that contains: 
APP_FIND.QUERY_FIND('<Your LOV Name>');    
For DEPT: 
APP_FIND.QUERY_FIND('DEPT_QF'); 
Documents you may be interested
Documents you may be interested