How to assign values to instances of a method created via an array
i have created an array of the PlayerRecord instance called currentPlayers and im trying to use another array of Strings to give names to the players (currentPlayers[instance].name) but it is failing horribly
when i try to name them one at a time as seen in the code here it seems to compile fine, but when i test it with a System.out.println(currentPlayers[0].name); it tells me "Exception in thread "main" java.lang.NullPointerException"
Im assuming this happens because the instances of PlayerRecord were created using an array, therefore i could not give the PlayerRecord a name value to begin with, but shouldnt currentPlayers[0].name = namesarray[0]; make up for that and give the value in namesarray[0] to currentPlayers[0].name? therefore allowing me to display the value held in currentPlayers[0].name without the error?
public class Round
public static PlayerRecord[] currentPlayers = new PlayerRecord[15];
public Round(String[] namesarray)
currentPlayers[0].name = namesarray[0];
System.out.println(currentPlayers[0].name);
public class test
public static void main (String[] args)
String[] namelist= {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l","m", "n", "o", "p"};
Round one = new Round(namelist);
public class PlayerRecord
public String name;
public PlayerRecord(String playername)
name = playername;
}
unfortunately the rest of the program relies on being
able to change the number of elements in the array,
so in the end a variable would take the place of the
15 in
public static PlayerRecord[] currentPlayers =
new PlayerRecord[15];so that would not work
It 'works', just not the way you supposed it would. :^)
It initializes an array of 15 elements with references to type Round. You need to assign those references to instances. The only way to create instances is via the 'new' keyword.
im surprised java isnt up there in the top reasons
for suicide
It's too early in the week for me to start drinking.....
actually now that i think about it, i could make it
work by having a definite amount of elements in the
array, but the array of names cannot be read since
they are connected to the Round method
Correct me if I am wrong, but you do already have a definite number of elements in your array. 15.
so basically the creation of the array of
currentPlayers has to be before the Round method, yet
the naming of the players has to happen in the Round
method, is there any way this can be done?
Round is not a method. It is your class's constructor (I think). Right before calling the setter for 'name', call 'new' and assign the created Round instance to that array element (in your case '0').
Then call 'name'.
Message was edited by:
s34nsm411- Saish
Similar Messages
-
How to assign Values to nested table and pass as parameter to procedure?
How to assign Values to nested table and pass as parameter to procedure?
Below is the Object and its type
create or replace type test_object1 as object
val1 varchar2(50),
val2 varchar2(50),
val3 varchar2(50)
create or replace type test_type1 is table of test_object1;
create or replace type test_object2 as object
val1 varchar2(50),
val2 varchar2(50),
val3 varchar2(50)
create or replace type test_type2 is table of test_object2;
GRANT ALL ON test_object1 TO PUBLIC;
GRANT ALL ON test_type1 TO PUBLIC;
GRANT ALL ON test_object2 TO PUBLIC;
GRANT ALL ON test_type2 TO PUBLIC;
here is the table made of object type:
create table test_object_tpe
sl_num NUMBER,
description VARCHAR2(100),
main_val1 test_type1,
main_val2 test_type2
NESTED TABLE main_val1 STORE AS tot1
NESTED TABLE main_val2 STORE AS tot2;
here is the procedure which inserts values into nested table:
PROCEDURE INSERT_TEST_DATA(sl_num IN NUMBER,
description IN VARCHAR2,
p_main_val1 IN test_type1,
p_main_val2 IN test_type2
IS
BEGIN
FOR rec in p_main_val1.first..p_main_val1.last
LOOP
INSERT INTO xxdl.test_object_tpe
sl_num,
description,
main_val1,
main_val2
VALUES
sl_num
,description
,test_type1 (test_object1(
p_main_val1(rec).val1,
p_main_val1(rec).val2,
p_main_val1(rec).val3
,test_type2 (test_object2( p_main_val2(rec).val1,
p_main_val2(rec).val2,
p_main_val2(rec).val3
END LOOP;
commit;
END INSERT_TEST_DATA;
here is the anonymoys block which assigns values to the object type and pass values into the procedure:
set serveroutput on;
declare
p_sl_num NUMBER := 1001;
p_description VARCHAR2(50) := 'Testing Val1';
inval1 test_type1 := test_type1();
inval2 test_type2 := test_type2();
begin
inval1(1).val1 := 'testx1';
inval1(1).val2 := 'testx2';
inval1(1).val3 := 'testx3';
inval2(1).val1 := 'testy1';
inval2(1).val2 := 'testy2';
inval2(1).val3 := 'testy3';
CSI_PKG.INSERT_TEST_DATA(sl_num => p_sl_num,
description => p_description,
p_main_val1 => inval1,
p_main_val2 => inval2
end;
Can anybody correct me.
Thanks,
LavanThanks for posting the DDL and sample code but whenever you post provide your 4 digit Oracle version (result of SELECT * FROM V$VERSION).
>
How to assign Values to nested table and pass as parameter to procedure?
>
Well you are doing almost everything wrong that could be done wrong.
Here is code that works to insert data into your table (the procedure isn't even needed).
declare
p_sl_num NUMBER := 1001;
p_description VARCHAR2(50) := 'Testing Val1';
inval1 test_type1 := test_type1();
inval2 test_type2 := test_type2();
begin
inval1.extend();
inval1(1) := test_object1('testx1', 'testx2', 'testx3');
inval2.extend();
inval2(1) := test_object2('testy1', 'testy2', 'testy3');
INSERT INTO test_object_tpe
sl_num,
description,
main_val1,
main_val2
VALUES
(p_sl_num, p_description, inval1, inval2);
commit;
end;
/See Example 5-15 Referencing a Nested Table Element in Chap 5 Using PL/SQL Collections and Records in the PL/SQL doc
http://docs.oracle.com/cd/B28359_01/appdev.111/b28370/collections.htm#CJABEBEA
1. You don't even need the procedure since all it does is a simple INSERT into the table which you can do directly (see my code above)
inval1(1).val1 := 'testx1';There is no element one (1) of 'inval1' since you haven't created any elements yet. You need to EXTEND the collection to add an element
inval1.extend();And then there is an empty element but 'inval1' is a container for objects of type 'test_object1' not for scalars like 'val1', 'val2', and 'val3'.
So you can't do
inval1(1).val1 := 'testx1';You have to create an instance of 'test_object1'
inval1(1) := test_object1('testx1', 'testx2', 'testx3');And so on for the other collection
You don't need the procedure (as my sample code shows) but once you populate the variables properly it will work. -
How to assigne value in sub record type
Dear below mention record type database,now i want to assigne value in payr_rec type,in this recrocrd type have one column party_id,but how can assigne value int this field ,
TYPE group_rec_type IS RECORD(
group_name VARCHAR2(255),
group_type VARCHAR2(30),
created_by_module VARCHAR2(150),
-- Bug 2467872
mission_statement VARCHAR2(2000),
application_id NUMBER,
party_rec PARTY_REC_TYPE := G_MISS_PARTY_REC
please guide.to get the desired default party_rec attribute value, just assign the "sub-record" attribute defaults as desired; PL/SQL will assign a default (non-null) record as the party_rec value using those attribute defaults:
create or replace package P_Test_It
as
type party_rec_type is record (
dummy varchar2(1) default 'X'
type group_rec_type is record (
group_name VARCHAR2(255),
group_type VARCHAR2(30),
created_by_module VARCHAR2(150),
-- Bug 2467872
mission_statement VARCHAR2(2000),
application_id NUMBER,
party_rec PARTY_REC_TYPE
end;
set serveroutput on
declare
rec p_test_it.group_rec_type;
begin
dbms_output.put_line(rec.party_rec.dummy);
end;
X
PL/SQL procedure successfully completed.Hope it helps.
Gerard -
How to assign values for more than one field
Hi,
I have written following code
constants: fieldname(30) value '(SAPMF02D)KNA1-AUFSD'.
constants: fieldname1(30) value '(SAPMF02D)KNA1-LISFD'.
constants: fieldname2(30) value '(SAPMF02D)KNA1-FAKSD'.
field-symbols: <L_FIELD> TYPE ANY.
field-symbols: <L_FIELD1> TYPE ANY.
field-symbols: <L_FIELD2> TYPE ANY.
Assign (fieldname) to <l_field>.
<L_FIELD> = 'ZB'. " value according to your requirement
Assign (fieldname1) to <l_field1>.
<L_FIELD1> = 'ZB'.
while debugging <l_field1> is not assinging (fieldname1).
Im able to assing for (fieldname).
how to assign value for (fieldname1).
plz suggest me to assign values for more than one field.
Regards,
BrahmajiHello,
Because there is no field name called LISFD in KNA1. Actually you misspelled the field name.
It is KNA1-LIFSD -
How to assign values to server group when you parallelly client-copying
Hello all,
I'm now trying to create server group.
Currently, I use serial process, or default settings, when client-copying.
But I want to implement this in parallel processes.
Due to this, I have to create server group and assign a lot of values to something I don't know!
I want to create a server group, but don't know how to assign values to ones like "Max. requests in queue", "Max. no of logons" and so on.
Could you please advise me how to allocate values to the resourses shown below;
Advanced : 1 *I think "1" is the flag for advanced settings
Max. requests in queue
Max. no. of logons
Max. disp. of own logon
Max. no. of WPs used: *should be the total of SM50, I guess
Min. no. of free WPs
Max. no. of comm. entries
Max. wait time
thanks in advance,
HozyHi,
Would you check this [Parallel Processes |http://help.sap.com/saphelp_sm32/helpdata/EN/e8/df959834ac11d586f90000e82013e8/frameset.htm] and [Parallel processes FAQ|http://www.saptechies.com/ccinfo-parallel-processes-faq/] i hope will get some hint.
Regards
Mohan Rao -
How to assign values to Dynamic VO.
Hi All,
I have created a Dynamic VO and i have created 2 attributes(name and age) for it.
Can i create this dynamic VO in Process form request of one of the CO class?
Please let me know how to assign values to it......and display it and the page.?
Thanks,
Sowmya.Mukul
I am trying to achieve something like below:
Creating a Dynamic VO in my extended controller's ProcessRequest() method and attaching it to a MessageChoiceBean. In ProcessFormRequest() method based on some condition i have to change my Dynaic VO's whereClauseParam and re-execute it so that it will show some different set of values. Below is the code which i used. But after re-executing it my LOV is still showing old set of values. I have posted a query regd. the same but dint get much help. Kindly let me know, if you have any comments. Also Please find the link to my earlier post.
Link: Re: Re-executed dynamic VO not showing new values
* CODE *
ProcessRequest()
ViewObject vo = (ViewObject)am.createViewObjectFromQueryStmt("dummyVO","SELECT MEANING AS VALUE FROM HR_LOOKUPS WHERE LOOKUP_TYPE = :1");
vo.setMaxFetchSize(-1);
vo.setWhereClauseParam(0,"input1");
vo.executeQuery();
OAMessageChoiceBean mesBean=(OAMessageChoiceBean)webBean.findIndexedChild(webBean,"DemoChoiceItem");
mesBean.setPickListCacheEnabled(false);
mesBean.setPickListViewObjectDefinitionName("dummyVO ");
mesBean.setPickListViewUsageName("dummyVO ");
mesBean.setListDisplayAttribute("VALUE");
mesBean.setListValueAttribute("VALUE");
ProcessFormRequest()
If the event is fired
S.O.P(....);
ViewObject vo1 = (ViewObject)am.findViewObject("dummyVO");
vo1.clearCache();
vo1.reset();
vo1.setWhereClause(null);
vo1.setWhereClauseParams(null);
vo1.setWhereClauseParam(0,"input2");
vo1.executeQuery();
S.O.P(....);
Thanks -
How to assign values to JTable using mysql database
how to assign value to JTable using mysql...
Search the forum. You use the values of the "ResultSet" to create a "DefaultTableModel" which you then add to the "JTable".
I'll let you pick the search keywords to use, which I've suggested above. You can also throw in my userid if you want to specifically look for my solution. -
How to assign project specific task with the newly created projects ?
Hi All,
I need help. I need to assign project specific tasks (which i will be taking from staging table) other than the default task which are assigned during project creation. How do I proceed with this within same package. I am attaching the code of my package below...
CREATE OR REPLACE PACKAGE body xxpa_proj_conv_pkg as
PROCEDURE xxpa_create_project_proc(O_ERRBUF OUT VARCHAR2,O_RETCODE OUT VARCHAR2)
is
variables need to derive global parameters
v_responsibility_id NUMBER; --- PA Supervisor responsibility id
v_user_id NUMBER;
deriving global parameters-
-- Variables needed for API standard parameters
v_api_version_number NUMBER := 1.0;
v_commit VARCHAR2(1) := 'F';
v_return_status VARCHAR2(1);
v_init_msg_list VARCHAR2(1) := 'F';
v_msg_count NUMBER;
v_msg_index_out NUMBER;
v_msg_data VARCHAR2(2000);
v_data VARCHAR2(2000);
v_workflow_started VARCHAR2(1) := 'Y';
v_pm_product_code VARCHAR2(10);
---variables for catching errors---
v_error_flag number:=0;
-- Predefined Composite data types
v_project_in PA_PROJECT_PUB.PROJECT_IN_REC_TYPE;
v_project_out PA_PROJECT_PUB.PROJECT_OUT_REC_TYPE;
v_key_members PA_PROJECT_PUB.PROJECT_ROLE_TBL_TYPE;
v_class_categories PA_PROJECT_PUB.CLASS_CATEGORY_TBL_TYPE;
v_tasks_in_rec PA_PROJECT_PUB.TASK_IN_REC_TYPE;
v_tasks_in PA_PROJECT_PUB.TASK_IN_TBL_TYPE;
v_tasks_out_rec PA_PROJECT_PUB.TASK_OUT_REC_TYPE;
v_tasks_out PA_PROJECT_PUB.TASK_OUT_TBL_TYPE;
v_CREATED_FROM_PROJECT_ID varchar2(20);
v_CARRYING_OUT_ORGANIZATION_ID varchar2(20);
v_person_id NUMBER;
v_project_role_type VARCHAR2(20);
API_ERROR EXCEPTION;
v_a NUMBER;
cursor for project in data
CURSOR cur_project_in_data IS SELECT * FROM XXPA_PROJECT_IN_STG;
cursor for task data
CURSOR cur_task_in_data IS SELECT * FROM XXPA_TASK_IN_STG;
------------------------Cursors used for validations----------------------------------
cursor for product code used for validation
cursor cprc is select distinct PROJECT_RELATIONSHIP_CODE from PA_PROJECT_CUSTOMERS;
cursor for distribution rule-
cursor cdr is select DISTRIBUTION_RULE from PA_DISTRIBUTION_RULES;
cursor for project status code
cursor cpsc is SELECT PROJECT_STATUS_CODE, PROJECT_STATUS_NAME FROM PA_PROJECT_STATUSES WHERE STATUS_TYPE = 'PROJECT';
cursor for template/created from project id
cursor ccpid is select project_id from pa_projects where template_flag='Y';
BEGIN
select user_id, responsibility_id into v_user_id, v_responsibility_id
from PA_USER_RESP_V
where user_name like 'amit_kumar%'
and responsibility_name like'PA SupervisorS';
-- --Fnd_global.apps_initialize(user_id,resp_id, resp_appl_id);
-- Fnd_global.apps_initialize(v_user_id,v_responsibility_id,275);
-- -------calling global parameters---
pa_interface_utils_pub.set_global_info
p_api_version_number =>v_api_version_number,
p_responsibility_id =>v_responsibility_id,
p_user_id =>v_user_id,
p_msg_count =>v_msg_count,
p_msg_data =>v_msg_data,
p_return_status =>v_return_status
dbms_output.put_line ('Set Global status ->' || v_return_status);
----Cursor for PRODUCT RELATED DATA-----------
FOR REC IN cur_project_in_data LOOP
-----PASSING VALUES TO THE COMPOSITE DATA TYPE(PROJECT_IN_REC_TYPE)-------
----retrieving product code-----
select lookup_code into v_pm_product_code
from pa_lookups
where lookup_type = 'PM_PRODUCT_CODE'
and meaning = 'Oracle Project Manufacturing';
-----retrieving and validating created from project id----
BEGIN
select project_id
into v_CREATED_FROM_PROJECT_ID
from pa_projects_all
where name=rec.created_from_project_name;
EXCEPTION
when others then
O_Retcode := '1';
O_Errbuf :='Incorrent CREATED_FROM_PROJECT_NAME';
Fnd_File.Put_Line (Fnd_File.LOG, O_Errbuf);
UPDATE XXPA.XXPA_PROJECT_IN_STG
SET ERROR_FLAG ='1' ,last_updation_date='sysdate' where created_from_project_name = rec.CREATED_FROM_PROJECT_NAME;
END;
-----retrieving & validating carrying out organization id-----
BEGIN
select distinct(CARRYING_OUT_ORGANIZATION_ID)
into v_CARRYING_OUT_ORGANIZATION_ID
from pa_projects_prm_v
where CARRYING_OUT_ORGANIZATION_NAME=rec.carrying_out_organization_name;
EXCEPTION
when others then
O_Retcode := '1';
O_Errbuf :='Incorrent Carrying Out Organization name';
Fnd_File.Put_Line (Fnd_File.LOG, O_Errbuf);
UPDATE XXPA.XXPA_PROJECT_IN_STG
SET ERROR_FLAG ='1' ,last_updation_date='sysdate' where carrying_out_organization_name = rec.carrying_out_organization_name;
END ;
v_project_in.pm_project_reference := rec.segment1;
v_project_in.project_name := rec.PROJECT_NAME;
v_project_in.created_from_project_id := v_CREATED_FROM_PROJECT_ID;
v_project_in.carrying_out_organization_id := v_CARRYING_OUT_ORGANIZATION_ID;
v_project_in.project_status_code := rec.PROJECT_STATUS_CODE;
v_project_in.description := rec.PROJECT_DESCRIPTION;
v_project_in.start_date := rec.PROJECT_START_DATE;
v_project_in.completion_date := rec.PROJECT_COMPLETION_DATE;
v_project_in.distribution_rule := rec.DISTRIBUTION_RULE;
v_project_in.project_relationship_code := rec.PROJECT_RELATIONSHIP_CODE;
-------------------------Validation of incoming project data--------------------------------
v_error_flag := 1;
project relationship code validation
BEGIN
for prc in cprc
loop
if (rec.PROJECT_RELATIONSHIP_CODE=prc.PROJECT_RELATIONSHIP_CODE) or (rec.PROJECT_RELATIONSHIP_CODE is null)--can be overridden from template
then
v_error_flag :=0;
else null;
end if;
end loop;
END;
project distribution rule validation
BEGIN
for dr in cdr
loop
if (rec.DISTRIBUTION_RULE=dr.DISTRIBUTION_RULE) or (rec.DISTRIBUTION_RULE is null) null since the value can be taken from template too
then
v_error_flag :=0;
else null;
end if;
end loop;
END;
project status code validation
BEGIN
for sc in cpsc
loop
if (rec.PROJECT_STATUS_CODE=sc.PROJECT_STATUS_CODE) or (rec.PROJECT_STATUS_CODE is null) null since the value can be taken from template too
then
v_error_flag :=0;
else null;
end if;
end loop;
END;
dbms_output.put_line ('Error at PROJECT_STATUS_CODE>' ||v_error_flag);
validation logic for project start date
BEGIN
if TRUNC(rec.PROJECT_START_DATE) >= TRUNC(rec.PROJECT_COMPLETION_DATE)
THEN
v_error_flag := 1;
O_Retcode := '1';
O_Errbuf :='Project start date cannnot be greater than completion date';
Fnd_File.Put_Line (Fnd_File.LOG, O_Errbuf);
END IF;
END;
validation logic for project completion date
BEGIN
if (TRUNC(rec.PROJECT_COMPLETION_DATE)<=TRUNC(rec.PROJECT_START_DATE))
then
if ( rec.PROJECT_STATUS_CODE='CLOSED' and rec.PROJECT_COMPLETION_DATE>sysdate)
THEN
v_error_flag := 1;
O_Retcode := '1';
O_Errbuf :='completion date cannot be greater than sysdate for closed projects';
Fnd_File.Put_Line (Fnd_File.LOG, O_Errbuf);
END IF;
v_error_flag := 1;
O_Retcode := '1';
O_Errbuf :='Project closed date cannot be less than start date';
end if;
END;
--------Update staging table for the error records--------
BEGIN
if v_error_flag =1
then
O_Retcode := '1';
O_Errbuf :='Incorrect project relationship code';
Fnd_File.Put_Line (Fnd_File.LOG, O_Errbuf);
UPDATE XXPA.XXPA_PROJECT_IN_STG
SET ERROR_FLAG ='1' ,last_updation_date='sysdate' where PROJECT_RELATIONSHIP_CODE = rec.PROJECT_RELATIONSHIP_CODE;
end if;
END;
-----------------------End of validation of incoming project data----------------------------------
---------------Project Task DATA-----------------
v_a:=0;
FOR tsk IN cur_task_in_data LOOP
v_tasks_in_rec.pm_task_reference :=tsk.task_reference ;
v_tasks_in_rec.task_name :=tsk.task_name;
v_tasks_in_rec.pm_parent_task_reference :=tsk.parent_task_reference ;
v_tasks_in_rec.task_start_date :=tsk.task_start_date ;
v_tasks_in_rec.task_completion_date :=tsk.task_completion_date ;
v_tasks_in(v_a) := v_tasks_in_rec;
v_a:=v_a+1;
end loop;
---------------end of task details------------------
--INIT_CREATE_PROJECT
pa_project_pub.init_project;
---------------------CREATE_PROJECT--------------------------
pa_project_pub.create_project(
p_api_version_number=> v_api_version_number,
p_commit => v_commit,
p_init_msg_list => v_init_msg_list,
p_msg_count => v_msg_count,
p_msg_data => v_msg_data,
p_return_status => v_return_status,
p_workflow_started => v_workflow_started,
p_pm_product_code => v_pm_product_code,
p_project_in => v_project_in,
p_project_out => v_project_out,
p_key_members => v_key_members,
p_class_categories => v_class_categories,
p_tasks_in => v_tasks_in,
p_tasks_out => v_tasks_out);
if v_return_status = 'S'
then
UPDATE XXPA.XXPA_PROJECT_IN_STG
SET INTERFACE_STATUS ='Success' where segment1 = v_project_out.pa_project_number; ---P->pending & S-> Success
dbms_output.put_line('New Project Id: ' || v_project_out.pa_project_id);
dbms_output.put_line('New Project Number: ' || v_project_out.pa_project_number);
else
UPDATE XXPA.XXPA_PROJECT_IN_STG
SET INTERFACE_STATUS ='Pending' where segment1 = v_project_out.pa_project_number;
raise API_ERROR;
end if;
END LOOP;
Commit;
------Handling Exception--------
EXCEPTION
WHEN api_error THEN
dbms_output.put_line('An error occured during project creation');
IF (v_msg_count > 0 ) THEN
FOR i IN 1..v_msg_count LOOP
apps.PA_INTERFACE_UTILS_PUB.get_messages(
p_msg_count => v_msg_count,
p_encoded => 'F',
p_msg_index => i,
p_msg_data => v_msg_data,
p_data => v_data,
p_msg_index_out => v_msg_index_out);
dbms_output.put_line('Error message v_data ->'||v_data);
dbms_output.put_line('Error message v_msg_data ->'||v_msg_data);
dbms_output.put_line('Error message v_msg_index_out ->'||v_msg_index_out);
dbms_output.put_line('Error message p_msg_index ->'||i);
APPS.fnd_file.put_line(APPS.FND_FILE.LOG,v_data);
END LOOP;
END IF;
WHEN OTHERS THEN
dbms_output.put_line('An error occured during conversion, SQLCODE ->'|| SQLERRM);
IF (v_msg_count >=1 ) THEN
FOR i IN 1..v_msg_count LOOP
PA_INTERFACE_UTILS_PUB.get_messages(
p_msg_count => v_msg_count,
p_msg_index => i,
p_encoded => 'F',
p_msg_data => v_msg_data,
p_data => v_data,
p_msg_index_out => v_msg_index_out);
dbms_output.put_line('Error message ->'||v_data);
APPS.fnd_file.put_line(APPS.FND_FILE.LOG,v_data);
END LOOP;
END IF;
end; --end procedure
END xxpa_proj_conv_pkg;
* Please tell me how to assign project specific task with the newly created projects??? *
Also please tell me how to assign multiple * Project_Relationship_Code * (ex: END CLIENT, GENERAL CONTRACTOR, PRIMARY) for a particular project during project creation?Are you not storing the project number in the staging table designed for storing the task data? You can use create_project API to create the project and tasks at the same time with one single call. You may want to try that option
-
How to change value of instance variable and local variable at run time?
As we can change value at run time using debug mode of Eclipse. I want to do this by using a standalone prgram from where I can change the value of a variable at runtime.
Suppose I have a class, say employee like -
class employee {
public String name;
employee(String name){
this.name = name;
public int showSalary(){
int salary = 10000;
return salary;
public String showName()
return name;
i want to change the value of instance variable "name" and local variable "salary" from a stand alone program?
My standalone program will not use employee class; i mean not creating any instance or extending it. This is being used by any other calss in project.
Can someone tell me how to change these value?
Please help
Regards,
Sujeet SharmaThis is the tutorial You should interest in. According to 'name' field of the class, it's value can be change with reflection. I'm not sure if local variable ('salary') can be changed - rather not.
-
How to assign value from insert statement to variable from a trigger
Hi,
I got this really annoying problem and I don't know if I am doing it correctly.
I have a BEFORE INSERT trigger on a table. When someone executes an insert statement I want to grab the value of a column from that statement and assign it to a variable and then do stuff with it. I'm stuck on the assignment.. look below..
CREATE OR REPLACE TRIGGER CARS.geotest2_trigger
BEFORE INSERT ON CARS.GEO_TEST2
FOR EACH ROW
DECLARE
v_chainkey nchar(32);
v_chainkey2 nchar(32);
not_exists EXCEPTION;
BEGIN
:NEW.CHAINKEY := v_chainkey;
SELECT GEO_TEST.CHAINKEY INTO v_chainkey2 FROM GEO_TEST WHERE GEO_TEST.CHAINKEY = v_chainkey;
IF v_chainkey2 = '' or v_chainkey2 is null THEN
RAISE not_exists;
ELSE
INSERT INTO GEO_TEST2 VALUES(:NEW.CHAINKEY, :NEW.BLA, :NEW.FOO);
END IF;
EXCEPTION
WHEN not_exists THEN
RAISE_APPLICATION_ERROR(-20010, 'Chainkey does not exist in parent table GEO_TEST');
END;
I keep getting this error
Error: ORA-04098: trigger 'CARS.GEOTEST2_TRIGGER' is invalid and failed re-validation
SQLState: 42000
ErrorCode: 4098It isn't assigning because v_chainkey is not at the left hand side of the assignment statement.
test@ORA10G>
test@ORA10G>
test@ORA10G> declare
2 x number := 5;
3 y number;
4 begin
5 x := y; -- does not assign anything to y; assigns NULL to x,
6 -- because y is NULL at this point
7 -- so, essentially the value 5 of x is *LOST* now
8 dbms_output.put_line('x = '||x);
9 end;
10 /
x =
PL/SQL procedure successfully completed.
test@ORA10G>
test@ORA10G>
test@ORA10G>In any case, here's what you are probably looking for:
test@ORA10G>
test@ORA10G> --
test@ORA10G> drop table geo_test;
drop table geo_test
ERROR at line 1:
ORA-00942: table or view does not exist
test@ORA10G> drop table geo_test2;
drop table geo_test2
ERROR at line 1:
ORA-00942: table or view does not exist
test@ORA10G>
test@ORA10G> create table geo_test (chainkey nchar(32));
Table created.
test@ORA10G> insert into geo_test (chainkey) values ('a');
1 row created.
test@ORA10G> insert into geo_test (chainkey) values ('');
1 row created.
test@ORA10G>
test@ORA10G> create table geo_test2 (chainkey nchar(32), bla number(1), foo number(1));
Table created.
test@ORA10G>
test@ORA10G>
test@ORA10G> CREATE OR REPLACE TRIGGER geotest2_trigger
2 BEFORE INSERT ON GEO_TEST2
3 FOR EACH ROW
4 DECLARE
5 v_chainkey2 nchar(32);
6 not_exists EXCEPTION;
7 BEGIN
8 SELECT GEO_TEST.CHAINKEY INTO v_chainkey2 FROM GEO_TEST WHERE nvl(GEO_TEST.CHAINKEY,'~') = nvl(:new.chainkey,'~');
9 IF v_chainkey2 is null THEN
10 RAISE not_exists;
11 END IF;
12 EXCEPTION
13 WHEN not_exists THEN
14 RAISE_APPLICATION_ERROR(-20010, 'Chainkey does not exist in parent table GEO_TEST');
15 END;
16 /
Trigger created.
test@ORA10G>
test@ORA10G> --
test@ORA10G> insert into geo_test2 (chainkey,bla,foo) values ('b',1,1);
insert into geo_test2 (chainkey,bla,foo) values ('b',1,1)
ERROR at line 1:
ORA-01403: no data found
ORA-06512: at "TEST.GEOTEST2_TRIGGER", line 5
ORA-04088: error during execution of trigger 'TEST.GEOTEST2_TRIGGER'
test@ORA10G>
test@ORA10G> --
test@ORA10G> insert into geo_test2 (chainkey,bla,foo) values (null,1,1);
insert into geo_test2 (chainkey,bla,foo) values (null,1,1)
ERROR at line 1:
ORA-20010: Chainkey does not exist in parent table GEO_TEST
ORA-06512: at "TEST.GEOTEST2_TRIGGER", line 11
ORA-04088: error during execution of trigger 'TEST.GEOTEST2_TRIGGER'
test@ORA10G>
test@ORA10G> --
test@ORA10G> insert into geo_test2 (chainkey,bla,foo) values ('a',1,1);
1 row created.
test@ORA10G>
test@ORA10G>
test@ORA10G>pratz
I think the sole purpose of that "not_exists" exception is this -
If you try to insert a NULL value for GEO_TEST2.CHAINKEY, then this trigger will throw an error even if at least one NULL value exists in GEO_TEST.CHAINKEY column.
Not sure if that's something that you wanted.
Message was edited by:
pratz -
How to assign values for boolean array in LabVIEW?
I want assign values for boolean array.Iam not able to do that.For each boolen i want to assign each value.Plz help me......
Please Mark the solution as accepted if your problem is solved and donate kudoes
Solved!
Go to Solution.Hi agar,
values in an array are "assigned" by building an array (using BuildArray) or by replacing values in an existing array (ReplaceArraySubset)!
Good starting point could be this...
Best regards,
GerdW
CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
Kudos are welcome -
How to assign values to a work area which is a Field Symbol?
Hello Experts!
I really need your help! this is the problem:
I need to assign values to fields into a work area which is a field symbol. The values come from a flat file I uploaded and as I can't know the length I had to build the structure dynamically ( That's why I'm using FS). Each field comes from the file separated by ';', I tried using the SPLIT sentence:
"SPLIT text AT ';' INTO TABLE <dyn_table>." but the values are assigned vertically into the same field instead of horizontally into each field of the table(field-symbol table).
I know the name of the field dynamically
(a TEXT + number) and I know I can't do this
<dyn_wa>-TEXT1 or field_name = 'TEXT1' <dyn_wa>-(field_name).... ohhh I'm blocked, I don't seem to find the answer, please help!
Thanks in advance!!
FrineeNow that you have a table with the values, you can move them to the work area.
data: begin of wa,
fld1(20) type c,
fld2(20) type c,
fld3(20) type c,
* and so on
end of wa.
data: istr type table of string with header line.
field-symbols: <fs>.
split text at ';' into table istr.
loop at istr.
assign component sy-tabix of structure wa to <fs>.
if sy-subrc <> 0.
exit.
endif.
<fs> = istr.
endloop.
write:/ wa-fld1, wa-fld2, wa-fld3.
Now, WA has the values in a horizontal fashion.
Regards,
Rich Heilman -
How to restrict value of materila in a PR created from PS to 1 Rupee
Hello Gurus,
While creation of material PR from P, system is picking value either info record or material master. How can we restrict value of materila in a PR created from PS to 1 Rupee?
NagarajHi,
On costing variants(OPL1)->valuation varient u can define which would be picked for planing, there give top priority for "Plan price 1"
To get plan price 1, you have to update on material master(mm02) on costing 2 tab as 1 rupee for all required materials.
hope this would help
regards,
SL -
How to get content of custom fields that were created via the EEWB for CIC?
Hi
Can anyone tell me how to get the content of custom fields that were created via the EEWB for CIC? This is required at a time when the data has not been written to the database.
I would like to know how to read this data in the CRM_APPOINTMENT_MERGE method of CRM_APPOINTMENT_BADI.
ThanksHi Michael,
I have a requirement to replicate custom setype data created for CRM sales order to R/3 sales order.These fields have been created at item level.
Do you know the set of steps to achieve the same.
Any help would be appreciated.
Thanks,
Chamu -
How to assign values to UDf of sales quotation at Doc level using UIAPI
HI,
I have a custom form, viz. Sales feedback.
When the user clicks button "Copy to sales quotation" of this form,
I create an instance of Sales quotation form and open it in SAPB1.
I have to populate all sales feedback data to this form(Sales quotation form's UPAPI).
What is the simpest way to do this?
Also, How can I assign UDF values to sales quotation from sales feedback.
Regards
Trupti MahurkarHi Trupti,
for assign UDF values, trying with:
Dim oTargetDoc,oSourceDoc As SAPbobsCOM.Documents
oTargetDoc.UserFields.Fields.Item("myUDF").Value= oSourceDoc.UserFields.Fields.Item("myUDF").Value()
Maybe you are looking for
-
New to PL\SQL from Sybase and need an answer to a question please
Hi, I want to read a row on table 'One' and caputure the values of 6 columns. So I will have values "A", "B","C", "D", "E" & "F". Then I want to use these 6 key values in a sub query to select rows from Table 'Two'. From table 'Two' I want want to sp
-
IPhone 4 Camera Excessive Color Fringe / Distortion
Hello everybody, the following is a topic that I move with me since quite some time, but maybe someone can help solving it. My iPhone (4) camera has extreme color fringing problems. As you can see in the following pictures, it occurs mainly on gradie
-
How much would I have to pay to get it fix with warranty?
-
Shopping Cart - Show discount code is applied and the discount amount (only when entered)
Hi, Customers are getting confused whether their discount code is applied or not - does anyone know a way to show that a discount code has been applied (but if no discount code is entered then they wont see the line) We tried {tag_invoicediscountamou
-
Call "EchoSign's built-in authoring tool" from my website
Hello. Could you please tell me if I am able to use "EchoSign's built-in authoring tool" outside of EchoSign website? I mean maybe there are some API methods with help of which I will be able to add such fields(as when using "EchoSign's built-in auth