Home » Developer & Programmer » Forms » PLSQL_TABLE.POPULATE_TABLE fails finding data (10g)
PLSQL_TABLE.POPULATE_TABLE fails finding data [message #440641] Tue, 26 January 2010 07:36 Go to next message
Rolic
Messages: 22
Registered: January 2010
Location: Latvia
Junior Member
Hi
I have simple table:
code = CHAR(5) as primary key
name = VARCHAR2(bla blal ba)
There is one-block-form based on this table. Block's datasource type = table and datatarget type = pl/sql procedure

Table API, Module API - all generated, all valid and seems correct. Now.. I try to update "name" from form. As soon as I type in something in the field, I get message "Row no longer exists". When digging deeper it seems that problem raises from lock_prodecure:

code:
DECLARE
bk_data CGC$CL_1_9_DKD.cgc$rec_tab;
BEGIN
PLSQL_TABLE.POPULATE_TABLE(bk_data, 'DKD', PLSQL_TABLE.LOCK_RECORDS);
CGC$CL_1_9_DKD.lck(bk_data);
END;

It seems, it has some problems on populating the "code" attribute in bk_data.

Any ideas, how to solve this problem without massive re-coding??
R.
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #445450 is a reply to message #440641] Mon, 01 March 2010 23:48 Go to previous messageGo to next message
djmartin
Messages: 10180
Registered: March 2005
Location: Canberra ACT Australia
Senior Member
Account Moderator
Sorry that I have been so long in replying. Have you solved your problem?

You say "how to solve this problem without massive re-coding". Why would you have ANY coding at all for such a simple tbale structure? Just use the wizard to create the block and forms will do ALL the work for you.

David
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #445476 is a reply to message #440641] Tue, 02 March 2010 01:25 Go to previous messageGo to next message
Rolic
Messages: 22
Registered: January 2010
Location: Latvia
Junior Member
That's the problem, forms seems to create all the coding, but somethings not working properly. And it seems that populate table sometimes has some porblems with populating tablefield "code", just becouse it is a primary key of table, not ID as it is for most of tables. But maybe I'm wrong and the problem is hidden somwhere else.

[Updated on: Tue, 02 March 2010 01:26]

Report message to a moderator

Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #447393 is a reply to message #445476] Mon, 15 March 2010 00:55 Go to previous messageGo to next message
djmartin
Messages: 10180
Registered: March 2005
Location: Canberra ACT Australia
Senior Member
Account Moderator
You are doing a 'Ctrl-Shft-K' (Compile All) aren't you?

David
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #447404 is a reply to message #447393] Mon, 15 March 2010 01:20 Go to previous messageGo to next message
Rolic
Messages: 22
Registered: January 2010
Location: Latvia
Junior Member
We are using Oracle Designer to generate our *.fmb files (OS Windows), Then we put those files on our application server, which is Linux and compile them there to get *.fmx file. Yes, sometimes we use Oracle Form Builder to debug or to correct our form, but the final result is always generated from O. Designer.

Got some idea??
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #448545 is a reply to message #447404] Wed, 24 March 2010 01:01 Go to previous messageGo to next message
djmartin
Messages: 10180
Registered: March 2005
Location: Canberra ACT Australia
Senior Member
Account Moderator
Okay. So this is an Oracle Designer question.

Did you define the items as being part of the Primary Key? Did you redefine the fields as being the Primary Key AFTER you had created the block in the form definition in Designer? Changing the database AFTER you have begun coding the form is fraught.

Does this form use a library that you have changed? Does this block use a database procedure whose parameters you have changed since you generated the form?

My suggestion is that whenever you change ANYTHING in the database (in terms of data structures and procedure/function/package parameters)that you regenerate EVERYTHING in your application. It only takes a single button press and a bit of machine time.

David
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #448553 is a reply to message #448545] Wed, 24 March 2010 01:20 Go to previous messageGo to next message
Rolic
Messages: 22
Registered: January 2010
Location: Latvia
Junior Member
Ha.... ha.... ha....
Funnny.

Everything is regenerated dosen times. Noone have changed anything neither in form, neigther in database. No table, tablefield or pl/sql definition is changed. Nothing. All the coding is default - designer's generated.

Grrr... this start's to get annoying. We are large compant and noone seems to get the idea, what's wrong, since all this is working fine for other forms/tables. The only difference is that their primary keys are IDs, not CODEs. So please don't treat this thred as some kind of joke. I'm 80% sure that this is kind of Oracle bug.
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #448603 is a reply to message #440641] Wed, 24 March 2010 04:28 Go to previous messageGo to next message
gregor
Messages: 86
Registered: March 2010
Location: Germany
Member
Hi Rolic,

Question:
Is it passible that the PL/SQL-Table, generated by
Designer, is indexed by Varchar2 ?
Older FORMS-Versions doesn't understand PL/SQL-Tabs
indexed by VARCHAR.
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449269 is a reply to message #448553] Mon, 29 March 2010 00:49 Go to previous messageGo to next message
djmartin
Messages: 10180
Registered: March 2005
Location: Canberra ACT Australia
Senior Member
Account Moderator
You said "their primary keys are IDs, not CODEs". Please describe the characteristics of an 'ID' versus a 'CODE' within your system.

Do you populate an 'ID' via a database trigger versus populate a 'CODE' from within the form?

David
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449279 is a reply to message #449269] Mon, 29 March 2010 01:28 Go to previous messageGo to next message
Rolic
Messages: 22
Registered: January 2010
Location: Latvia
Junior Member
Didn't really get the point of your question, but...
"ID NUMBER(12)"
"CODE" - usually CHAR(something) (this time - CHAR(5))

On each insert ID is receiver by oracle sequence (aad_sq.nextval). The sequence is assigned to tablefield, so when I generate table API, ins procedure already knows how to populate ID and user don't have to do that. In fact, we don't even show ID's at our forms.

For "code" there are no sequences, user just types in the needed value. But once the CODE is inserted, it can't be updated, as it is a primary key and as we know - primary keys can't be updated.

But... aren't we a little bit off-topic?? If my gess was right, the problem rises from lock procedure. Or do you have some ideas of where the problem is actually hidden?
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449283 is a reply to message #449279] Mon, 29 March 2010 01:37 Go to previous messageGo to next message
djmartin
Messages: 10180
Registered: March 2005
Location: Canberra ACT Australia
Senior Member
Account Moderator
In which trigger do you use the 'nextval' to populate the 'ID'?

Isn't there a property in Designer that accepts a 'sequence' for populating a column?

David
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449286 is a reply to message #449283] Mon, 29 March 2010 01:46 Go to previous messageGo to next message
djmartin
Messages: 10180
Registered: March 2005
Location: Canberra ACT Australia
Senior Member
Account Moderator
Have a look at page 10 of http://www.coreparadigm.com/conferenceDocs/des2kInfoFlow/des2kInfoFlow.doc.pdf about automatically created sequences.

I believe you need to do something similar and then substitute your sequence for the one that Designer has defined.

David
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449287 is a reply to message #449286] Mon, 29 March 2010 01:47 Go to previous messageGo to next message
djmartin
Messages: 10180
Registered: March 2005
Location: Canberra ACT Australia
Senior Member
Account Moderator
And page 14. Just search the document for 'sequence'.

David
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449288 is a reply to message #449283] Mon, 29 March 2010 01:48 Go to previous messageGo to next message
Rolic
Messages: 22
Registered: January 2010
Location: Latvia
Junior Member
Did I mention, that this ID populating thing is in trigger??? Or did I say that it is in "ins" procedure - Designer generated ins procedure from table API ????? huh...??? Mad Mad Mad Mad
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449289 is a reply to message #449287] Mon, 29 March 2010 01:51 Go to previous messageGo to next message
Rolic
Messages: 22
Registered: January 2010
Location: Latvia
Junior Member
Did you actually read the topic. The problem isn't about populating ID from sequence. In my situation - there are no tablefields named ID and ant tablefield that uses sequences. This table has tablefield CODE (CHAR(5)) as a primary key.

Is it so hard to understand???
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449290 is a reply to message #449288] Mon, 29 March 2010 01:52 Go to previous messageGo to next message
djmartin
Messages: 10180
Registered: March 2005
Location: Canberra ACT Australia
Senior Member
Account Moderator
No. To your first reply.

David
[EDITED by DJM: added 'To your first reply.']

[Updated on: Mon, 29 March 2010 01:53]

Report message to a moderator

Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449293 is a reply to message #449289] Mon, 29 March 2010 01:57 Go to previous messageGo to next message
djmartin
Messages: 10180
Registered: March 2005
Location: Canberra ACT Australia
Senior Member
Account Moderator
Sorry. When I read your other reply, I read the 'ins' as a typo.

My suggestion to have a look at 'des2kInfoFlow.doc.pdf' still stands.

David
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449300 is a reply to message #449293] Mon, 29 March 2010 02:21 Go to previous messageGo to next message
Rolic
Messages: 22
Registered: January 2010
Location: Latvia
Junior Member
This is no use... I have a feeling that you think that I'm new with Oracle at all. WRONG!!!!

Let's just forget everything between the first post and this one.
My question is:
"What's inside PLSQL_TABLE.POPULATE_TABLE?? How it works, what can couse it not to populate tablefield with datatype CHAR(5) into bk_data?"

If you can't answer this question, then the discussion is over. I'm not 5-year-old kid whom you can trick with counter-questions until the prime topic is changed. I'm fed up wasting my time with you. I have work to do and if you don't have propper answer or propper question, better don't post anything in this thred.
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449306 is a reply to message #449300] Mon, 29 March 2010 02:33 Go to previous messageGo to next message
Littlefoot
Messages: 20901
Registered: June 2005
Location: Croatia, Europe
Senior Member
Account Moderator
Wrong attitude, in my opinion (but I guess you don't care much about it ./fa/3314/0/).
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449311 is a reply to message #449306] Mon, 29 March 2010 02:57 Go to previous messageGo to next message
Rolic
Messages: 22
Registered: January 2010
Location: Latvia
Junior Member
Look at the mirror and say it onesmore...
I don't care who you are or who you think you are. I think I have my rights to be dissapointed if "senior member" tries to fool me with answers to completely different thing. I posted the question and I expect an answer or at least a discussion about it. This you failed and jet you try to proove something...
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449317 is a reply to message #449311] Mon, 29 March 2010 03:36 Go to previous messageGo to next message
Littlefoot
Messages: 20901
Registered: June 2005
Location: Croatia, Europe
Senior Member
Account Moderator
The fact is: you are not that long on this forum (according to information found in your profile). True, people (usually) browse certain forums before registering and actively participating discussions so - let's say you are here for a several months.

David is here for years (and so am I), and I have never seen him making jokes of anyone, trying to fool someone, or doing / saying anything unrelated to Oracle Forms. If anyone, he is a real professional here. He makes sure that none of questions posted in the Forms forum stays unanswered; sometimes it is, I guess, impossible to do what people are looking for, but you'll - at least - hear that.

I'm sorry that you got that (in my opinion, once again, wrong) impression. Hopefully, it will change.

I also hope you'll find the answer to your question.
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449498 is a reply to message #449317] Tue, 30 March 2010 01:02 Go to previous messageGo to next message
djmartin
Messages: 10180
Registered: March 2005
Location: Canberra ACT Australia
Senior Member
Account Moderator
Are you getting error message "FRM-40364" or "FRM-40735"? If not, what error message are you receiving?

Do you have more than 255 columns in the table?

David

Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449509 is a reply to message #449498] Tue, 30 March 2010 02:24 Go to previous messageGo to next message
Rolic
Messages: 22
Registered: January 2010
Location: Latvia
Junior Member
Form only pops out message "Row no longer exists" and that's it. If there is any other form error message then it get's trimmed somewhere. During debugging, nothing else showed up. And no, my table has only two columns, as mensioned in the first post.
Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #449791 is a reply to message #449509] Wed, 31 March 2010 23:24 Go to previous messageGo to next message
djmartin
Messages: 10180
Registered: March 2005
Location: Canberra ACT Australia
Senior Member
Account Moderator
VSAA,

I am sorry but I really want to be able to replicate your problem but am having significant difficulties in getting my Designer Repository set up.

I thought that maybe an older bug (the greater than 255 columns problem) may have returned (this has happened quite often in Oracle Forms wherein a problem solved in one version occurs in the early releases of the next version).

Unfortunately, I won't have time to work on this issue for a week or more and I can only recommend that as you have indicated that you have been using the tool extensively and that you 'know' that you have defined the key correctly, with all of its associated properties, that you log a TAR with Oracle Support and get them to solve it for you. That is why your organisation is paying the big licensing fees.

I will flag this thread and when I get my Repository working I will get back to it.

David
[EDITED by DJM: add keyword - designer repository key insert failure followup]

[Updated on: Wed, 31 March 2010 23:25]

Report message to a moderator

Re: PLSQL_TABLE.POPULATE_TABLE fails finding data [message #521715 is a reply to message #440641] Thu, 01 September 2011 09:02 Go to previous message
fakhar
Messages: 5
Registered: May 2005
Junior Member
hi David,

Are you getting error message "FRM-40364" or "FRM-40735"? If not, what error message are you receiving?
Getting the same issue with procedur based form and getting after adding lock procedure.. any suggestions?
Previous Topic: form generate message frm-40654
Next Topic: How to disable a menu inherited.
Goto Forum:
  


Current Time: Fri Dec 09 15:12:58 CST 2016

Total time taken to generate the page: 0.24181 seconds