using inputbox in the form

NiceMan331
NiceMan331 used Ask the Experts™
on
i have a tabular form ,
in post_text_item  will check a value if it is exist in the table
otherwise it will insert a record , but it require to receive one value from a user
here is my code

declare
	alert_button number;

begin
		if :V_STAT_D.RESRV is not null then
		if Empl_Exists(:v_emp.emp_no,:V_STAT_D.RESRV) = 0 then  (if record not exist)
alert_button:=show_alert('A_CONF');
if alert_button=alert_button1 then  -- alert asking user to confirm add new record
	-- here we need the form to receive one value from the user
	then insert into 

Open in new window


is there any way as ms access to send inputbox , the user type in , then use this value to insert into record ?
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
flow01IT-specialist

Commented:
The alerts of ORACLE forms don't have a input field.
You might consider building another form with a small canvass,  some push-buttons and a text item and mimick the behaviour of the msaccess inputbox.
Create a procedure (for example in a library that may be used also in other forms)  that calls the form and return the pressed button and and the value.
I suggest to user :global.variables to enable the communication between inputbox-form  and procedure.

Author

Commented:
wellcome back my teacher , i missed u
long time i not hear any replay from u

I suggest to user :global.variables

could u guide me on how to use this global variable

Create a procedure (for example in a library that may be used also in other forms)
which library ? in this form ?
IT-specialist
Commented:
For example
FORM F_INPUTBOX
when button pressed trigger on button1
    :global.inputbox_button := 'BUTTON1';
when button pressed trigger on button2
    :global.inputbox_button := 'BUTTON2';
    :global.inputbox_text  :=  :text_item;

in the form that uses it
PROCEDURE SHOW_INPUTBOX(p_button OUT VARCHAR2, p_text OUT VARCHAR2)
IS
BEGIN
   -- initialise the globals
   COPY(NULL,'GLOBAL.INPUTBOX_BUTTON');
   COPY(NULL,'GLOBAL.INPUTBOX_TEXT');
   CALL_FORM('F_INPUTBOX');
   -- use the globals
   p_button := NAME_IN('GLOBAL.INPUTBOX_BUTTON');
   p_text     := NAME_IN('GLOBAL.INPUTBOX_TEXT');
   -- remove the globals
   ERASE('GLOBAL.INPUTBOX_BUTTON');
   ERASE('GLOBAL.INPUTBOX_TEXT');
END;

you can put the procedure in the form you want to use it in, but you can also create a library (using the 'new' option you can use a form , a menu and a library) and put the procedure in it.

You can attach that library a form and that makes the procedure available to the form.
Should you be charging more for IT Services?

Do you wonder if your IT business is truly profitable or if you should raise your prices? Learn how to calculate your overhead burden using our free interactive tool and use it to determine the right price for your IT services. Start calculating Now!

Author

Commented:
ok great ,
i did it  but for my bad luck , the fmx of inputbox box fail to open ,
inspit of the fmb opened
i just added one button and one text item , then the  code of global
:global.inputbox_text  :=  :text_item;
is it necessary to add also the button variables
when button pressed trigger on button1
    :global.inputbox_button := 'BUTTON1';
when button pressed trigger on button2
    :global.inputbox_button := 'BUTTON2';

second :
then i adjust the procedure like this

PROCEDURE SHOW_INPUTBOX( p_text OUT VARCHAR2)
IS
BEGIN
   -- initialise the globals
 
   COPY(NULL,'GLOBAL.INPUTBOX_TEXT');
   CALL_FORM('F_INPUTBOX');
   -- use the globals
 
   p_text     := NAME_IN('GLOBAL.INPUTBOX_TEXT');
   -- remove the globals
 
   ERASE('GLOBAL.INPUTBOX_TEXT');
END;

is it ok ? because i need only the value of the text , i dont have any other text
or i should add the missed codes of button ?

third
regarding calling the global , is it true like this :

declare

  m_name varchar2(70);
begin


SHOW_INPUTBOX(m_name);

       insert into person_cons(person_name)
values(m_name);
             
commit;


END;
flow01IT-specialist

Commented:
If you don't need the  button information,but  just the text  i think you are making the good modifications.
But I don't understand your problem :
the fmx of inputbox box fail to open , inspit of the fmb opened
Do you mean it works if you use the run-option in the form builder but not if  you call the form from another another form ?

Author

Commented:
Yes , it run via form builder , but not run when calling it from another form , also I try to run it from form run time but not run also
flow01IT-specialist

Commented:
You are able to run other forms at runtime ?

Author

Commented:
yes , i run many forms at runtime without any problem

Author

Commented:
sorry
today i run it without any modification , it run
the code working very well now thanx
still one thing
when i call the inputbox form , how i can avoid showing the runtime standard form of oracle
flow01IT-specialist

Commented:
What do you mean by "runtime standard form" ?
If you mean that the form from where you call the imput-box is hidden if the inputbox-form is shown, then adjust the size of the window (and canvas) till it gets a real box the size you want.

Author

Commented:
I already adjusted the canvas & window size to fit with my requirement , but still when calling the input box form , there is full size of oracle runtime form
flow01IT-specialist

Commented:
I will check settings for a simular form-type at work on monday.
If you want to experiment check  window-style (> dialog) and modal (>yes) of the windows properties.
Is that window also the window mentioned in the form-properties ?

Author

Commented:
snapshot for the form
plz look the shoot , sorry for the teamviwer shot inside
Screenshot-2014-03-08-21.31.00.png
flow01IT-specialist

Commented:
What version of oracle forms you are using ?
If you use the inputbox calling it from another form is it a problem ?

Author

Commented:
i'm using oracle forms 6i
actually this problem not exculsive to the inbut box form
the screen of the oracle form appearing with all my forms
flow01IT-specialist

Commented:
Forms 6i runtime:  I think I can't help you.  
In later versions you can define the size of the applet within the forms*.cfg configuration file, but even then we did use it with internet explorer so that  applet is shown in the standard browser window,

Author

Commented:
ok
any how , you already answered my question , it is well now
shall i open new question for that subject ?
thanx

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial