Reading & displaying image in non-database item.
Upto now I have read & displayed image in database block and items. It has few problems.
Is there any way that I can read & display image in non-database block & items?
Thanks and regards,
Vikas
<p>Have a look at this Java Bean.</p>
Francois
Similar Messages
-
Retrieve image from database to non-database item
Hello
I need to load in a non database item, a image stored in a long raw field in the database.
The READ_IMAGE_FILE works fine to read from a file and to save the image in the database, but how I load the image in a block in a non database item?
Any suggestions???
Thanks!!!Hi, thanks for your comments...
I need to display in non-db-items because I have a form that dynamically fills an matrix of items from various tables. For example one data is on the table A, another data in table B and image is stored in the table C.
A process dynamically obtains each data where needed and fill the matrix based in a previous criteria.
Possibly this management can be adapted so that the image is read into db-items in my form, however I would like to know if there is a simpler way to do that, without having to change my code.
Thanks! -
Function not returning database rows properly in non-database item
Hi,
I have 3 database items that I'd like to concatenate into one field and display it in a non-database item. I have setup two different methods to do this for testing purposes. First, I created three separate database items (SECTION, ROW, & SEAT_NUM) and a non-database item (SEAT). I created a formula (in SEAT) to do the concatenation and this way works fine. For my second method, I created a function where I selected the 3 fields and performed a concatenation into a single value to be returned in a seperate non-database item (SEAT_TEST).
Here's my function:
FUNCTION SeatLocation(p_id IN event.id%TYPE)
RETURN VARCHAR2 IS
CURSOR a IS
(SELECT ltrim(rtrim(event.section,' '),' ')||' '||
ltrim(rtrim(event.row,' '),' ')||' '||
ltrim(rtrim(event.seat_num,' '),' ') seat
FROM event
WHERE event.id = p_id);
BEGIN
FOR rec IN a LOOP
IF rec.seat IS NOT NULL THEN
RETURN rec.seat;
ELSE
RETURN ' ';
END IF;
END LOOP;
END SeatLocation;
And I'm calling it in a POST_QUERY trigger with the following: :event.seat_test := SeatLocation(:event.id);
I put both non-database items side-by-side, run the form, and the first method works fine. I doesn't quite work for the function to display in SEAT_TEST. For my program, an ID can have multiple seat locations and I'd like to display all those seats as I scroll through the form (for a given ID). What the function is returning is only the first records seat location even though there are two more locations (from the remaining two records) that need to be displayed, but are not. It works fine for the formula method. Is there a work around this within my function code and/or the SEAT_TEST item? I'd like to keep my function instead because I could use the code elsewhere. I thought that since there is more than one record retrieved for a particular ID, the for loop would return one value each loop iteration and display the different value seat locations as I scroll/arrow down through the form. I didn't know if you had to call the POST-QUERY trigger multiple times for the number or records you retrieve in the cursor. I hope this makes sense.
Any advice would be greatly appreciated.
Thank you,
EricEven though your function is written to loop through multiple records, as soon as it hits the first one inside the FOR loop, it returns that value. The Return command is an exit, so the function is done, and you cannot expect it to magically run a second time just because the cursor found more than one row.
You need to pass the function all the parameters to form a unique key into the row you are looking up. ID is not unique. -
I have one datablock (ma_erz) in my forms based on the table test1.
Datase-Items of table test1:
:ma_erz.MAE_ID,
:ma_erz.MAE_SYSART
Non-Database-Items:
:ma_erz.L_KM_USERNAME
My problem is, that I could not sort the records of a non-database-item.
Does anybody know a workaround? I would like to sort the records to username.
I am saving the username in :MA_ERZ.L_KM_USERNAME in Post-Query
of datablock ma_erz:
/* CGFK$QRY_LOOKUP_DATA */
/* Query lookup data for the foreign key(s) */
BEGIN
IF (
(name_in('MA_ERZ.MAE_SYSART') IS NOT NULL)
THEN
BEGIN
CGFK$QRY_MA_ERZ_MA_ERZ_SYS_ERZ(
:MA_ERZ.L_ERZSYS_ERZ_BEZEICHNUNG, /* OUT: Value in item :MA_ERZ.L_ERZSYS_ERZ_BEZEICHNUNG */
:MA_ERZ.MAE_SYSART); /* IN : Value in item :MA_ERZ.MAE_SYSART */
EXCEPTION
WHEN NO_DATA_FOUND THEN
MESSAGE('Fehler : Sys Art does not exist');
WHEN OTHERS THEN
CGTE$OTHER_EXCEPTIONS;
END;
SET_RECORD_PROPERTY(:SYSTEM.TRIGGER_RECORD, 'MA_ERZ', STATUS , QUERY_STATUS);
END IF;
IF (
(name_in('MA_ERZ.MAE_ID') IS NOT NULL)
THEN
BEGIN
CGFK$QRY_MA_ERZ_MA_ERZ_SYS_KM_(
:MA_ERZ.L_KM_VORNAME, /* OUT: Value in item :MA_ERZ.L_KM_VORNAME */
:MA_ERZ.L_KM_NAME, /* OUT: Value in item :MA_ERZ.L_KM_NAME */
:MA_ERZ.L_KM_USERNAME, /* OUT: Value in item :MA_ERZ.L_KM_USERNAME */
:MA_ERZ.MAE_ID); /* IN : Value in item :MA_ERZ.MAE_ID */
EXCEPTION
WHEN NO_DATA_FOUND THEN
MESSAGE('Error : does not exist');
WHEN OTHERS THEN
CGTE$OTHER_EXCEPTIONS;
END;
SET_RECORD_PROPERTY(:SYSTEM.TRIGGER_RECORD, 'MA_ERZ', STATUS , QUERY_STATUS);
END IF;
END;
/* CGFK$RESET_BLOCK_WHERE_CLAUSE */
BEGIN
IF (CG$PROTOTYP_MA_ERZ_V01_GLOBALS.MA_ERZ_WHERE <> 'first_time') OR
CG$PROTOTYP_MA_ERZ_V01_GLOBALS.MA_ERZ_WHERE IS NULL THEN
set_block_property('MA_ERZ', DEFAULT_WHERE, CG$PROTOTYP_MA_ERZ_V01_GLOBALS.MA_ERZ_WHERE);
CG$PROTOTYP_MA_ERZ_V01_GLOBALS.MA_ERZ_WHERE := 'first_time';
END IF;
END;Or, even simpler, put the following in your order by:
ORDER BY (SELECT THELOOKUPCOLUMN
FROM THELOOKUPTABLE X
WHERE X.MAE_ID=Y.MAE_ID)Additionally, set the ALIAS of the block to Y
p.s. you could even skip the "ORDER BY" itself. -
When-validate-record trigger only if a non database item is changed
Hi,
I am trying a code in the when-vaidate-record trigger in the BLOCK level.
The trigger should fire only if a checkbox item value is ticked(Value ='Y) for the present record(i.e, if already existing other records have a value ticked (='Y), it doesnt matter and trigger shouldnt fire)
Please help me achieve this :
The code I have tried in when-vaidate-trigger, which does not work as what I want :
DECLARE
X NUMBER;
BEGIN
if
nvl ( :DEFLOC.to_be_defaulted, 'N' ) = 'Y' and :DEFLOC.COMMENTS is NULL
and :SYSTEM.RECORD_STATUS ='CHANGED'
then
set_alert_property(
'err_alert',
alert_message_text,
'You must enter a comment when defaulting localities.');
x := show_alert('err_alert');
RAISE FORM_TRIGGER_FAILURE;
end if;
END;The above code does not fire at all..
If I remove the part,
and :SYSTEM.RECORD_STATUS ='CHANGED'
it fires for "all records"(not just the currently changed records) where nvl ( :DEFLOC.to_be_defaulted, 'N' ) = 'Y' and :DEFLOC.COMMENTS is NULL
Please help !!
Note: :DEFLOC.to_be_defaulted is a non database item ; :DEFLOC.COMMENTS is a database itemHi kriti,
There is one more way,
In the when-checkbox-changed trigger,
if :your_chk_box = 'Y' then
set_Record_property(:system.cursor_Record, 'your_blk',status,changed_Status);
else
set_Record_property(:system.cursor_Record, 'your_blk',status,Query_Status);
end if;
Then it is easy for you to find out the changed records using get_Record_property((:system.cursor_Record, 'your_blk',status)
Hey let me ask you one Question, is that check_box item is database item ???
If so,
it is easier..the fol. code will work for that
if nvl ( :DEFLOC.to_be_defaulted, 'N' ) = 'Y' and :DEFLOC.COMMENTS is NULL
and nvl(get_item_property('DEFLOC.to_be_defaulted',database_value),'N') = 'N' then
set_alert_property(
'err_alert',
alert_message_text,
'You must enter a comment when defaulting localities.');
x := show_alert('err_alert');
RAISE FORM_TRIGGER_FAILURE;
end if;otherwise
If your are creating that temp. item, it should be in the same block as non-db item.
I will explain this... You are setting the status of to_be_defaulted check box of some queried record to Y based on some conditions, right?
These records anyways are not updateable. Now your requirement is to find out the newly checked check boxes.
So in the post query or the place where you set to_be_defaulted as 'Y, we will default the new item with value Y, so that in the when validate trigger, you
know which record needs to attacked, It is those records with nvl( new item ,'N') = 'N' and to_be_defaulted = 'Y'...
Regards
Dora... -
Problem with non-database item
I have a 10g rel 2 form that has a post-query trigger that populates a non-database item. The non-database item has a when-validate-item trigger which I only want to fire when the user changes something in that field not at query time because it causes the form status to be changed. How can I either prevent this trigger from firing in query mode or test within the trigger that I'm in query mode so that the logic won't get executed?
Put this at the top of your when-validate trigger:
If :system.mode = 'QUERY' then
return;
End if;I have found that post-query activity often causes ALL when-validate triggers at the item and block level to run. So you may need those three lines in every when-validate trigger. -
Display '0s' for null database items Please help!
Hi all,
I need your help on a possible minor problem I'm encountering. I have 5 fields (all numeric data types) on my form of which, the last field is a sum (formula non-database item) of the top four items. 2 out of the remaining 4 fields are database text items in which I'd like to update the database based on user input. The table that stores the 4 values does not require data and defaults to null if no data present.
What I'd like to do is display a '0' on the form so that its visible and it could get added to the formula sum item but not update the database fields with a '0' (if any one of those top 4 fields returns null from the table ). I've tried creating a formula in the property palette on the fields with an nvl(field,0) function and got a chain reference error that I couldn't figure out based on the oracle error suggestions. Does anyone have any suggestions on how I could handle my request. Any help would be greatly appreciated.
Thanks,
EricZakiy,
I don't know much about the POST-CHANGE trigger. Did a little research and posted some code in there retrieving the nvl(field) value. It compiled ok but didn't display the '0.' I'm not sure if I used the trigger the right way.
Here's my code:
DECLARE
v_points NUMBER;
CURSOR c_points IS
(SELECT nvl(points,0)
FROM student
WHERE student_id = :id);
BEGIN
OPEN c_points;
FETCH c_points INTO v_points;
CLOSE c_points;
END;
If this is incorrect, do you have an example from what you were thinking? Also, just out of curiosity, why do you recommend this trigger over the formula?
From what I was mentioning before, I don't know why the formula w/the nvl works in the sum field but doesn't in the other 4 fields. The sum field is a non-database item whereas 2 others are display items and the remaining 2 are text items. Seems simple enough to use the nvl in the formula section for all 4 fields I kept getting that error.
Eric -
About populating a non-database item in a multi-records block
Hi, all
I have a problem about populating a non-database item in a
multi-records block. This block is set to database block with a
controlled item which needs to be populated after query. so I
create a post-query trigger, but my problem is when the records
listed in this block are less than 10 ( the record number is set
to 10), the trigger fires no problem. but when the retrieved
records are greater than 10, the error message is 'post query
trigger raised unhandled exception ora 01403'. anyone can help me
fix this problem?
Thanks in advance
DianaDiana,
When you have an unbound item in a block and want to fetch
some data into it you need to write a post-query trigger.What
you have done is right.But it seems that u are getting a No data
found error.I am sure about how u r populating data into that
field.If u have written a select statement to fetch the data in
post-query trigger, kindly handle an exception and find out the
problem.Having a look at ur code(pos-query) would be much more
helpful for giving a better solution.Try this a let me know.
Thanks
Vinod. -
How to query on non database item?
I am working on AP Invoice form. The Invoice Header block based on table ap_invoices_all, I have database items such as invoice_num, invoice_date, and invoice_amount. I also have some non databases item like supplier and supplier number. I added POST_QUERY:
declare
supplier varchar2(240);
supplier_number varchar2(30);
supplier_site varchar2(15);
begin
select aps.vendor_name, aps.segment1
into :invoice_header.supplier, :invoice_header.supplier_number
from ap_suppliers aps
where aps.vendor_id = :invoice_header.vendor_id;
Also in PRE-QUERY
declare
supplier varchar2(240);
supplier_number varchar2(30);
supplier_site varchar2(15);
invoice_num varchar2(50);
invoice_date date;
invoice_amount number;
begin
select aia.invoice_num, aia.invoice_date, aia.invoice_amount
into :invoice_header.invoice_num, :invoice_header.invoice_date, :invoice_header.invoice_amount
from ap_invoices_all aia
where aia.vendor_id = (select vendor_id from ap_suppliers where vendor_name = :invoice_header.supplier);
It's showing fine with Suppier iformation I query by invoices, but I doesn't work when I query by supplier.
Can anyone help? I really appreciate.Hello,
Thanks for your reply. I think I need to clarify my problem
Your cursor has the same result as what I have in the post-query:
Select aps.vendor_name, aps.segment1
into :invoice_header.supplier, :invoice_header.supplier_number
from ap_suppliers aps
where aps.vendor_id = :invoice_header.vendor_id;
and they both work when I query on a database item, such as invoice_num and the non database item vendor name and vendor number will show up. I am doing ok with this.
My problem is when I query on vendor name field which is not a database item, such as CLARK PUBLIC UTILITIES, it will not return CLARK PUBLIC UTILITIES only, instead it returned all the suppliers. Could you please help with this? Thanks a lot. -
Avoid bar to display or not non secure items
When I insert to
http://paphoscarhire.com/
pickup date bigger than drop off date, to get error (in ie7 only) ,
appears a window to display or not non secure items, and to
document window a bar, well why this ? what to do to avoid this
?please clarify what it is you are asking?
there are two possibles i see-
One, you have a flash .swf file that will need to be
double-clicked to work
and will probably bring up an activeX warning.
The fix for that is to edit the page in dw8.02 or CS3 or to
use different
code to display it. Google .swf eolas lawsuit
the other possible is that the form's action is to an https
url.
I don't know why that is used, unless in the next step or so
of the form
process you are asking for credit card or other sensitive
info.
If i load the script page itself without submitting, i see
there the css
file has a path to Your hard drive.
<link
href="file:///C|/Documents%20and%20Settings/User/My%20Documents/My%20Webs/pc
h/styles.css"
that could cause the page to display a warning that there is
a mix of secure
and insecure data on the page.
Alan
Adobe Community Expert, dreamweaver
http://www.adobe.com/communities/experts/ -
Populate non database items with lov
Hi,
Let's say that I have one database block with 2 columns ID and NAME.
Only ID it is a not displayed database column, and NAME it is a displayed text item with an lov which retrieve data for both columns.
How can I do, to populate the non database item NAME after querying the block, without using POST-QUERY trigger and select into statement.
Thanks.Hi Gabriel
How can I do, to populate the non database item NAME after querying the block, without using POST-QUERY trigger and select into statement.u can't do that but with using POST-QUERY trigger and select into statement.
This Trigger fires the action of populating the non-db item block Level after executing query...
Regards,
Amatu Allah -
How to query non database items
hi every one
I have database block has database items and non database items
i want to make query in that non database items to retrieve data by that non database items and database items
thinksHi Every one
I want to use the non databsae item in query to retireve data by it
Example
In table emp
emp_id
emp_name
Dept_id
But in Form
Emp_name
Dept_name
When endtr data open lov to retireve Emp name and emp id
and when enter department name in table enter dept id but in form user see dept name in form .
but if he try to use dept name in query he can't because it non database item .
How can i use this item in my query to retireve data by dept name ? -
How to include non database item in the query
Hi
I have a Master-Detail form. where in the detail block one of the field is text item 'X' attached the list of values(Y). Master block includes non database items which is based in the decoding result of the database items for example:
Gender(Male, Female)>> non database item
Gender_id(M,F)>>database item
the form is created based on the template.fmb form for apps. When I run the form in the query mode, i can query about any database item while including query about others non database item does not affect.
how to can i modify it so this could be handled??
I know that one way to avoid this issue is to create a view with all my desired field.
but there should be away to override the build in query used by oracle apps...
any one has a link, source, document... etc that help on this??
any idea how to do it without creating a view??
thnx alotHi HST,
You can code the handling in POST-Query of the corresponding block to retrive the corresponding data depending on the Queried data.
Regards,
Kiran -
Check box as a non database item
Hi.,
I am using jdev 11.1.5
My scenario:
I need to use checkbox in my af:table which is a non database item
if i check that check box i need to select the current row in that table
ex:
yr period type
2010 2 AJ [checkbox]
2010 3 AJ [checkbox]If I check the 2nd period check box then the value of
Row row= vo.getcrrent();
row.getAttribute("period"); // this value must be 2
check box must be a non-database item
how can i do thisis this what you want?
Row row= vo.getcrrent();
row.getAttribute("period"); // this value must be 2
int index =vo.getRangeIndexOf(row); //Get the index of the given row relative to the beginning of the range. http://download.oracle.com/docs/cd/E12839_01/apirefs.1111/e10653/oracle/jbo/RowIterator.html#getRangeIndexOf%28oracle.jbo.Row%29 -
Querying a record from a non-database item
I am working in Apex 4.0. I have a page based on a table with the following columns: dktnr, borrower, amount, previous_dktnr, subsequent_dktnr. The precious_dktnr is the dktnr under which the loan was financed in the past, before its assumption or refiancing. The subsequent_dktnr is the dktnr under which the loan is later identified. When a loan is refinanced, it is assigned a new dktnr in a new record, and the old dktnr is placed in the previous_dktnr column of that new record, and the current dktnr is placed in the subsequent_dktnr column of the old dktnr record.
I created two buttons, one for the previous_dktnr and one of the subsequent_dktnr. When I click either of these buttons, the action redirects to the current page and places the value of either the previous or subsequent dktnr into the dktnr item. This queries the record for the dktnr that has the same value as the previous or subsequent dktnr.
This works. It allows the user to shuffle back and forth between the two dktnr's.
One would assume then that, if a non-database item were created, say :P22_QUERY_DKTNR, you would be able to enter an existing dktnr into that item and have a button, using the same logic as the previous and subsequent dktnr buttons, that would be able to return the record for the dktnr entered.
I have tried this, and it does not work. Can anyone tell me why it does not work?
Edited by: Doug on Apr 9, 2011 3:42 PM
Edited by: Doug on Apr 9, 2011 3:43 PM
Edited by: Doug on Apr 9, 2011 3:43 PM
Edited by: Doug on Apr 9, 2011 3:45 PM
Edited by: Doug on Apr 9, 2011 3:46 PMDoug,
Made copies of your two page within your workspace, page 3 & 4.
The issue was the page did not have a value in session containing your Look_Up value. I altered the Look-Up button to Submit the Page so as to capture the Look_Up value and then added a new Page Branch that was sequenced prior to your existing branch. This new branch sets your P4_DKTNR with the Look_Up value and then returns your results.
Jeff
Maybe you are looking for
-
hi. Im having problems with a download of photoshop cs4 that I purchased online. It downloaded fine and I followed the instructions to the letter. however when I try to open the application I get a message that reads " application will not open becau
-
JSP : create variable dynamic variable name and get his value.
//HI forums.sun.com ! //What I want to do is above : //out.println("<td style=\"width: "+col_width_+h+" \">") //Variable Declaration String col_width_1 = "100px"; String col_width_2 = "150px"; //etc String col_width_N = "XXXpx"; //loop for (int h = 0
-
LOGON LOAD BALANCING WITH THIRD PARTY LOAD BALANCERS
Hello Everybody, We would like to implement third party Application Load Balancers for all our Applications including SAP Landscape (HTTP and SAP LOGON). Could you please indicate which third party load balancers are compatibles with SAP LOGON GROUP
-
Licensing error in Windows 2000
Post Author: DaveMoran CA Forum: Upgrading and Licensing I'm using the RDC component in Crystal XI with SP3 to build a custom application. This application is written in C++ and built using VS2005. I've recently upgraded VS2005 with SP1. I've been in
-
Result set Problem...URGENT
I have doubt about my getObject method, my database attribute got varchar and number, can i use getObject method to retrieve??? Because i encounter null error when i use getObject for my database..... I f any sample to elobrate will be better.