Lookup / Selection table

If you have questions or if you want to share your opinion about Aware IM post your message on this forum
Post Reply
crisg0112
Posts: 395
Joined: Fri Jan 31, 2014 3:45 am
Location: Melbourne, Australia

Lookup / Selection table

Post by crisg0112 »

Hi,

BO used:
Emp_Table (Persistent-MSSQL)
tempfiles (Non-Persistent)
Emp_Form (Persistent-MSSQL)

On my request login form, an employee has to select who is his/her immediate supervisor. The main BO of this form is the Emp_Form. The user has the ability to use a selection/lookup of all employees in the company. I have a button that calls a process via Awareapp.startprocess

This process then reads an employee table.
PICK FROM emptable_qry
CREATE tempfiles WITH tempfiles.supervisor=Emp_Table.empsupervisorID

I want to return the value of the tempfiles.supervisor to the field Emp_Form.empsupervisorID

Am I doing the right thing? How do you guys implement a selection table in AwareIM?
Thanks in advance!

Cris
MSSQL 2008R2, Aware 7 b2146, IE11, , Firefox 35.0.1, Windows 8 Bootstrap theme
aware_support
Posts: 7527
Joined: Sun Apr 24, 2005 12:36 am
Contact:

Post by aware_support »

You don't even need to write a process for this (unless you want to). This is provided automatically by including the Add button in the presentation options of a reference attribute.
Aware IM Support Team
crisg0112
Posts: 395
Joined: Fri Jan 31, 2014 3:45 am
Location: Melbourne, Australia

Post by crisg0112 »

Hi support,

thanks for replying. The problem is that there are more than 10,000+ records on the Emp_File.

Providing them with a link to search on and then select the one they want is preferrable as sometimes the users already know the emp_id.
Thanks in advance!

Cris
MSSQL 2008R2, Aware 7 b2146, IE11, , Firefox 35.0.1, Windows 8 Bootstrap theme
aware_support
Posts: 7527
Joined: Sun Apr 24, 2005 12:36 am
Contact:

Post by aware_support »

The names of your objects are VERY misleading - they are development-driven, rather than business-driven. There's clearly an Employee object in your system , not sure who the Supervisor is - whether it's a separate object or an Employee as well. You need to define proper objects and relationships before you do anything else in your system. This is absolutely crucial.

Any object that has "table" or "form" in its name is likely to be very misleading to Aware IM developers (in the best case scenario) or plainly wrong (in the worst case scenario).

Once you have defined objects and relationships properly describe your problem - first at the business level and then at the development level if necessary.

As it is I am not sure I understand what you are trying to achieve here and what the problem is.
Aware IM Support Team
crisg0112
Posts: 395
Joined: Fri Jan 31, 2014 3:45 am
Location: Melbourne, Australia

Post by crisg0112 »

Hi Support,

Let me try to make this things clearer.

Request form (this is a BO).
Employee (this is an existing MSSQL Table).

There is NO relationship between the two. The Request Form only uses the Employee as a tool to search for an employee in the company. The user has the option to use it or not.

see this screenshot
https://drive.google.com/file/d/0BxdRsP ... sp=sharing

By clicking on the Personnel Search hyperlink, it opens up another window which lists ALL the Employee (except terminated,resigned,on-leave)
https://drive.google.com/file/d/0BxdRsP ... sp=sharing


The reason it was made as a PICK FROM is to help the user to just select the Employee and return the USERID to the Registration form.

I cannot make the USER ID reference attribute of the Employee BO as the Employee contains 20,000+ records and loading takes time.

Surely, returning a value from a different BO to another BO can be done in AwareIM regardless if they are relatable or not ??
Thanks in advance!

Cris
MSSQL 2008R2, Aware 7 b2146, IE11, , Firefox 35.0.1, Windows 8 Bootstrap theme
aware_support
Posts: 7527
Joined: Sun Apr 24, 2005 12:36 am
Contact:

Post by aware_support »

Well, if there is no relationship PICK FROM is the way to go.
Aware IM Support Team
crisg0112
Posts: 395
Joined: Fri Jan 31, 2014 3:45 am
Location: Melbourne, Australia

Post by crisg0112 »

Yes, PICK FROM is being used.

The question is how do I retrieve the value of the selected row?
Thanks in advance!

Cris
MSSQL 2008R2, Aware 7 b2146, IE11, , Firefox 35.0.1, Windows 8 Bootstrap theme
tford
Posts: 4238
Joined: Sat Mar 10, 2007 6:44 pm

Post by tford »

The instance of the BO that you select in the PICK FROM is in context in the process after the instance if chosen.

You can use it any way you like in the process at that point in the process.
Tom - V8.8 build 3137 - MySql / PostGres
crisg0112
Posts: 395
Joined: Fri Jan 31, 2014 3:45 am
Location: Melbourne, Australia

Post by crisg0112 »

Hi Tom,

Thanks for the input.

I am aware that the current context holds the selected value. However when I try to use that context to update a different BO it comes up with an invalid object identifier.

I would have gone with the reference link to the personnel but the requirements of the user doesn't allow us to do it.

I will try and create a simple BSV if needed
Thanks in advance!

Cris
MSSQL 2008R2, Aware 7 b2146, IE11, , Firefox 35.0.1, Windows 8 Bootstrap theme
Jaymer
Posts: 2475
Joined: Tue Jan 13, 2015 10:58 am
Location: Tampa, FL
Contact:

bump

Post by Jaymer »

did this ever get solved?

i'm struggling with a simple selection table myself.
i don't want a fancy pull down or anything... in most cases the user may know the Manufacturer Code from memory, but if they don't, then I want to bring up a list in a new window.
I'd even like for them to be able to type a few characters of the code to shorten the choices.

If they entered a code that exactly matched ONE record in the Manuf file, then I'd like to display the Manuf Name to the right and move to next field.
If it didn't match, then either ask to create or move to the new window.

(most likely I'm going to cross post this to a new thread)
aware_support
Posts: 7527
Joined: Sun Apr 24, 2005 12:36 am
Contact:

Post by aware_support »

This is really really simple. All you need to do is create an appropriate reference attribute in one object to point to the other one and in the presentation options of this attribute select the drop down. At runtime Aware IM will automatically populate the drop down with all records available at this point.

In these presentation options you can also select a filter if need be and choose whether the user will be typing a few characters first or not.

Watch our video tutorials, read the How To document and finally read the User Guide.
Aware IM Support Team
Jaymer
Posts: 2475
Joined: Tue Jan 13, 2015 10:58 am
Location: Tampa, FL
Contact:

Post by Jaymer »

hi SUPPORT,
THAT may be simple (I've seen it in the videos), but its not what I want.

I don't think you read what I need.

For similar reasons to others who have asked this Q, I don't want a pulldown. I don't want the network traffic, db traffic, delay, etc.

I want to enter a English-style code, like "IBM" and tab off the field to the next field. Something has to verify that IBM matches EXACTLY a value in the Manufacturer file, and then display "IBM Corp." to the right of what I typed in.

Pick From is supposed to aid in this, but I can't find an example of Pick From, only syntax reference.
aware_support
Posts: 7527
Joined: Sun Apr 24, 2005 12:36 am
Contact:

Post by aware_support »

You can't avoid the network traffic and the database search - someone has to look up the database and match the entered value with what is already stored.

The pull down where the use types in a few letters like IBM does exactly that. As a configurator all you have to do is pick the "Fetch when user types" option in the presentation of the drop down. At run time the user types IBM, the system matches the record, finds IBM Corporation and displays it in the pull down and nothing else. Why bother with PICK FROM??
Aware IM Support Team
Post Reply