Variable updating when another variable changes. How to keep it static?
I'm missing something very basic here I think. What's happening is that I'm looping through a list. I also need to update that list, but since I don't want to update the list I'm looping through, I created a temporary list to hold the new values. Then after I'm done looping, I'll update my original list with my temporary list.
I started out by defining/setting the variables:
<defvar name='matchedAccessLevels'>
<ref>
<concat>
<s>user.accounts[FACILITIES].properties.locationMap[</s>
<ref>theLoc</ref>
<s>].accessLevels</s>
</concat>
</ref>
</defvar>
<defvar name='tempAccessLevels'>
<ref>matchedAccessLevels</ref>
</defvar>Then I loop through. Below are the results from the log with block trace. It looks like whenever I update tempAccessLevels, it's updating matchedAccessLevels. The whole point of using tempAccessLevels was so that matchedAccessLevels remained static. What am I missing? What do I need to do differently to keep matchedAccessLevels from changing? I've tried many different combinations of code and still matchedAccessLevels is changing whenever I update tempAccessLevels.
<cond>
<eq>
<ref>theLoc</ref> --> Milwaukee
<s>Milwaukee</s> --> Milwaukee
</eq> --> 1
<block trace='true'>
<set name='matchedAccessLevels'>
<ref>
<concat>
<s>user.accounts[FACILITIES].properties.locationMap[</s> --> user.accounts[FACILITIES].properties.locationMap[
<ref>theLoc</ref> --> Milwaukee
<s>].accessLevels</s> --> ].accessLevels
</concat> --> user.accounts[FACILITIES].properties.locationMap[Milwaukee].accessLevels
</ref> --> [Mail Room, Provider Audit File - Door 3142, Cost Reports - Door 3127]
</set> --> null
<set name='tempAccessLevels'>
<ref>matchedAccessLevels</ref> --> [Mail Room, Provider Audit File - Door 3142, Cost Reports - Door 3127]
</set> --> null
<dolist name='theAccessLevel'>
<ref>matchedAccessLevels</ref> --> [Mail Room, Provider Audit File - Door 3142, Cost Reports - Door 3127]
<cond>
<eq>
<ref>theAccessLevel</ref> --> Mail Room
<s>Mail Room</s> --> Mail Room
</eq> --> 1
<block trace='true'>
<remove name='tempAccessLevels'>
<s>Mail Room</s> --> Mail Room
</remove> --> null
<ref>tempAccessLevels</ref> --> [Provider Audit File - Door 3142, Cost Reports - Door 3127]
<ref>matchedAccessLevels</ref> --> [Provider Audit File - Door 3142, Cost Reports - Door 3127]
<append name='tempAccessLevels'>
<s>Center Hall to NGS Far N Dr</s> --> Center Hall to NGS Far N Dr
</append> --> null
<ref>tempAccessLevels</ref> --> [Provider Audit File - Door 3142, Cost Reports - Door 3127, Center Hall to NGS Far N Dr]
<ref>matchedAccessLevels</ref> --> [Provider Audit File - Door 3142, Cost Reports - Door 3127, Center Hall to NGS Far N Dr]
<defvar name='isAccessLevelUpdated'>
</defvar> --> null
</block> --> null
</cond> --> null
Ok, xpress objects are really Java objects and, as in Java, are handled by reference.
When you are setting tempAccessLevels, you are setting it to refer to the same list object as matchedAccessLevels.
A convenient way to actually copy a list is with the append function. eg:
<defvar name='tempAccessLevels'>
<append>
<ref>matchedAccessLevels</ref>
</append>
</defvar>
Similar Messages
-
How is the resolution variable or when would we change the resolution of an image and why?
How is the resolution variable or when would we change the resolution of an image
and why?It all depends on the output:
* for viewing on screen 90 -120 ppi
* for printing on a laser printer 180 -300 ppi
* for printing on a desktop printer 240 - 300 ppi
Some people claim 360 ppi is optimum but I don't see any difference compaired to 300 ppi at least not with the naked eye... -
How to derive a variable value from another variable of a different IO?
Hi Gurus,
I am aware that using BEx variables and Customer Exit you are able to derive a variable value from another variable of the same infoobject (for example, Fiscal Year/Period (0FISCPER) and Calendar Day (0CALDAY)).
However, is is possible, using the same approach to derive a variable value from another variable that is in a different InfoObject? (for example, Input Fiscal Year/Period (0FISCPER) but derive Output of Required Start Date (0REQSTDAT))?
There are 2 BEx variables involved,
1) A user entry variable that is restricted in 0FISCPER
2) A customer exit variable that is restricted in ZREQSTDAT
In CMOD under EXIT_SAPLRRS0_001, Include ZXRSRU01, the code (I assume, correct me if I'm wrong) should perform 3 functions in I_STEP = 2,
1) After the pop up, capture user entry of Fiscal Year/Period
2) Identify or convert Fiscal Year/Period to Calendar Day range (unsure on how to code this portion)
3) Use the Calendar Day to lookup on matching Required Start Date and display all Required Start Date that matches. (unsure on how to code on this portion)
Hope to hear your thoughts soon.
Regards,
EricHi Shanthi,
I've made the necessary adjustments. The only difference in my code is,
Instead of,
If I_VNAM = 'ZREQSTDAT'
I use,
CASE I_VNAM.
Instead of,
PARAMETERS: ZFISCPER TYPE /BI0/OIFISCPER.
ZYEAR = ZFISCPER(4).
ZMM = ZFISCPER+4(3).
I use ,
This is the Customer Exit Variable in ZREQSTDAT
WHEN 'ZRSD_CX'.
The loop I use for the User Entry Variable in 0FISCPER-ZFYP_IN
LOOP AT I_T_VAR_RANGE INTO LOC_VAR_RANGE
WHERE VNAM = 'ZFYP_IN'.
IF SY-SUBRC = 0.
CLEAR L_S_RANGE.
ZYEAR = LOC_VAR_RANGE(4).
ZMM = LOC_VAR_RANGE+4(3).
The codes were checked with no errors.
However, when I input the Fiscal Year/Periods and hit 'Execute'. The report went blank, not sure what is the cause. I've tried it several times. No error message appeared.
Regards,
Eric -
Restriction of f4 help of a bex variable based on another variable input
Hi,
Could you please let me know if there is any possibility to restriction of f4 help of a bex variable based on another variable input.
eg: when i select particular company code in one variable, i need to restrict the f4 help for another variables eg: pur. group based on selected company code.
Regards
KasiHi,
Try using replacement path option in bex with replace variable with variable selction.
Thanks. -
Can we set a variable by assigning another variable to it
Hi,
Can we set a variable by assigning another variable to it. If not how can we implement this.
Thanks
MadhaviHi Sutirtha,
My requirement is
step1 set VARIABLE1
step2 set VARIABLE2 = #VARIABLE1
step3 using VARIABLE2 in Interface to filter data
Now the value of VARIABLE2 contains #VARIABLE1. its not fetching the value of #VARIABLE1 because of this it is giving an error in the interface like "Invalid character".
Please check the step2, is that syntax correct?
--thanxs
Madhavi -
I cannot complete my iphone configuration after sofware update, when i connect to itunes i keep gettin a try again later message
That's usually a sign that your phone was hacked/jailbroken, and iTunes has detected such, errored out, preventing your phone from activating. Since Apple does not support hacking/jailbreaking, that's what happens, by design.
We can't help you here, as Apple owns this forum. You'll have to go elsewhere. -
Shared Variable does not update when typedef is changed
I have a shared variable of type custom control (typedef made up of a cluster). When I chang the typedef, e.g. the name or type of one of the fields in the cluster, and then save it, the shared variable does not update to reflect this change. That is, if I place the shared variable on my block diagram and do a "UNBUNDLE BY NAME" on the output, I see the old fields. I have to go back to the properties of the shared variable, change its data type, apply it, then go back and change it back to my custom control.
Anyone else seen this behaviour? Anyone know how to get the shared variable to update without going through this procedure?
Bill
“A child of five could understand this. Send someone to fetch a child of five.”
― Groucho MarxI guess I should have included this information:
LabVIEW 8.2.1 using Project Explorer.
“A child of five could understand this. Send someone to fetch a child of five.”
― Groucho Marx -
How to use the value of a variable to set another variable
Hello Experts,
Is it possible to access the value of variable set by the user and set the default value of another variable using the user entered value for the first variable? Example:
Date variable
Week variable
Month variable
User enters one of those and the other two are automatically prefilled with the correct values?
Thanks
RadoHi Rado,
Gothrough following code
Which reads year from user input and converts it to factory calendar week , following which you should able to convert user inputs to required parameters.
DATA: v_year1 TYPE i,
v_int TYPE i,
v_week1 TYPE kweek,
v_qurt TYPE i,
v_perd TYPE /bi0/oifiscper,
v_iweek TYPE i,
v_periv TYPE periv VALUE 'Z4'.
DATA : v_vweeks TYPE /bi0/oicalweek,
v_vperd TYPE /bi0/oifiscper,
v_vperiv TYPE /bi0/oifiscvarnt VALUE 'Z4'.
DATA : vit_weeks LIKE /bi0/scalweek OCCURS 0 WITH HEADER LINE.
DATA : v_perd1 TYPE umc_y_fiscper,
v_weeks TYPE umc_ys_dimvals,
v_pweeks TYPE i.
CASE i_vnam.
WHEN 'WPIYWEEK'. "Variable name of char. in Bex
*Check for Step 2 (After user gives inputs on selection screen)
CHECK i_step = c_after. "Step:2
CLEAR : v_year1,
v_week1,
v_iweek.
*Read the value of variable which used has entered on sel. screen
READ TABLE i_t_var_range INTO wa_var_range
WITH KEY vnam = 'WPIFYEAR'.
v_year1 = wa_var_range-low.
CALL FUNCTION 'TIME_GET_LAST_WEEK'
EXPORTING
if_year = v_year1
IMPORTING
ef_week = v_week1
EXCEPTIONS
fatal_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*Get the no. of week from YYYYWW format
v_iweek = v_week1+4(2).
l_s_range-low = v_iweek.
l_s_range-sign = c_include.
l_s_range-opt = c_equal.
APPEND l_s_range TO e_t_range. "This is the output structure in which u have to add the result
Endcase.
Hope that helps.
Regards
Mr Kapadia
Assigning points is the way to say thanks in SDN. -
Filling up a variable value from another variable
Hi,
I have two date fields, one calmonth characteristic ZCALMON (as char) and other calmonth charactaeristic 0CALMON as time dimension (standard bw).
But at query level, I would like to user enter only one variable value 0PCALMON for 0CALMON (say only for date characteristic as time dimension). This date variable value should get copied to other date characteristic ZCALMON (as char).
I can do this by using the customer exit varibale (without writing any abap code) and using the copy variable from other variable options. But I am not able to use the offset on ZCALMON.
How can i Use offset using customer exit variable on ZCALMON.
cheers
rajHi,
you can use customer exit variable which will read the value of the 0calmonth variable and pass it to the zcalmonth.
While populating the value, do the calculation or the off-set and send the value to zvcalmonth (Variable).
WHEN 'ZVCALMON'.
IF i_step = '2'.
Loop at i_t_var_range into i_s_var_range where vnam = '0PCALMON' .
zdat = i_s_var_range-low.
endloop.
CALL FUNCTION 'GO_BACK_MONTHS' *Sample Function
EXPORTING
currdate = zdat
backmonths = '012'
IMPORTING
newdate = from_period.
CALL FUNCTION 'GO_BACK_MONTHS' *Sample Function
EXPORTING
currdate = zdat
backmonths = '000'
IMPORTING
newdate = to_period.
CLEAR l_s_range.
lyear = from_period+0(4).
lmon = from_period+4(2).
lday = from_period+6(2).
CONCATENATE lyear lmon lday INTO l_s_range-low.
Hope you got it
Regards
Happy Tony -
Sales Order Updation when the delivery changed
Hello Experts,
I am working an object where I need to update the sales order when the delivery changed.
Actually when the remote system rejected the delivery an IDOC will come to R/3
Sooner the delivery changed in R/3 I need to update few fields in sales order.
When I am trying to code in the exit in the FM attached to the IDOC it is first updating the sales order and calling ws_update_delivery next.
Even if I am trying in mv45afz1 also same thing is happening.
Can anyone let me know how to solve this problem.Hi,
you can see the work center capacity situation for manufacturing an item in the salesorder. But it needs Assemble to Order strategy. Anyway u can see the material details in the sales order.
Kiran. -
Assigning variable value to another variable
I want to assign value from one variable with type DATETIME to another variable which has type STRING.
E.G: I need to convert this variable P_CreatedDate of type DATETIME to STRING variable CreatedDate.
Can someone help me in C# script. Im using SSIS script task.
Thanks in advance.
ZKI have a requirement where I need to convert following datetime variable value into the string vaiable format.
Here is the example:
7/23/2014 11:24 PM
I need above datetime to be converted into following string format
2014-01-01 03:15:01.470
yyyyMMdd HHmmssFFF
Thanks in advance.
ZK -
Having my Mail account update when I make changes on Gmail
I use mostly my Gmail account by signing in the Gmail web page. I have set up so my Gmail account is synced with my Mail account on my Mac. But when I delete messages when I am on the Gmail page, it doesn't delete the same emails in the same account that is set up with Mail.
So when I do use Mail, I have a ton of unread emails that I have already read and deleted from Gmail.
How do I sync them so my Mail account will update when I delete emails from the Gmail web page?your gmail is probably set up as POP in Mail. you need to set it up as IMAP if you want constant syncing with the server. delete the gmail account in Mail and set it up again. when you setting it up uncheck the box to set it up automatically. otherwise it will create it as POP again. see this link for instructions on how to set it up as IMAP
http://mail.google.com/support/bin/answer.py?hl=en&answer=81379 -
How to get value od one variable baesd on another variable
Hi Gurus,
Is this thing possible?My problem is i have one variable on "0calmonth2" based on this variable i want to populated the values in another object (0calquarter).i.e.
If i select " Jan or Feb or Mar" it should populate 1 in 0calquarter similarly, for other monthHello Deepak
Try a function module like this:
FUNCTION Z_YOUR_FM.
""Interfase local
*" IMPORTING
*" VALUE(I_AREA) TYPE UPC_Y_AREA
*" VALUE(I_VARIABLE) TYPE UPC_Y_VARIABLE
*" VALUE(I_CHANM) TYPE UPC_Y_CHANM OPTIONAL
*" VALUE(ITO_CHANM) TYPE UPC_YTO_CHA
*" EXPORTING
*" REFERENCE(ETO_CHARSEL) TYPE UPC_YTO_CHARSEL
*" EXCEPTIONS
*" FAILED
clear export table
CLEAR eto_charsel.
data: i TYPE i value 1,
ls_charsel TYPE upc_ys_charsel,
l_periv type periv value 'K1',
l_calmonth2 type UMC_Y_ICHAVAL,
l_buffer_call TYPE boole-boole VALUE ' ',
l_subrc LIKE sy-subrc,
ls_return LIKE bapiret2,
l_type LIKE upc_var-vartype,
lto_varsel_all TYPE upc_yto_charsel,
lto_varsel TYPE upc_yto_charsel,
lto_chanm TYPE upc_yto_cha,
wa_varsel like line of lto_varsel,
l_quarter(1),
l_quarterc(5).
Read value of CALMONTH2 variable
CALL FUNCTION 'Z_VARIABLE_GET_DETAIL'
EXPORTING
i_area = <YOUR PLANNING AREA>
i_variable = <YOUR CALMONTH2 VARIABLE>
i_buffer = l_buffer_call
IMPORTING
e_subrc = l_subrc
es_return = ls_return
e_type = l_type
eto_varsel_all = lto_varsel_all
eto_varsel = lto_varsel
eto_chanm = lto_chanm.
IF l_subrc eq 0.
loop at lto_varsel into wa_varsel.
move wa_varsel-low to l_calmonth2.
endloop.
ENDIF.
calculate quarter
CASE l_calmonth2.
WHEN '01' OR '02' OR '03'.
l_quarter = '1'.
WHEN '04' OR '05' OR '06'.
l_quarter = '2'.
WHEN '07' OR '08' OR '09'.
l_quarter = '3'.
WHEN '10' OR '11' OR '12'.
l_quarter = '4'.
ENDCASE.
passing QUARTER to variable value
CLEAR ls_charsel.
ls_charsel-CHANM = I_CHANM.
ls_charsel-SEQNO = i.
ls_charsel-sign = 'I'.
ls_charsel-opt = 'EQ'.
ls_charsel-low = l_quarter.
INSERT ls_charsel INTO TABLE eto_charsel.
add 1 to i.
ENDFUNCTION.
Hope this helps...
regards,
Ibrahim. -
How to show Min and Max values when another value "changes to a new value"
Hi
If I have this data (generated with this query: SELECT 1 A, 1 B UNION ALL SELECT 2, 1 UNION ALL SELECT 3, 2 UNION ALL SELECT 4, 2 UNION ALL SELECT 5, 1)
A B
1 1
2 1
3 2
4 2
5 1
How can I generate this data (created with this query SELECT 1 Amin, 2 Amax, 1 B UNION ALL SELECT 3, 4, 2 UNION ALL SELECT 5, 5, 1)
Amin Amax B
1 2 1
3 4 2
5 5 1
Thanks.Please post DDL, so that people do not have to guess what the keys, constraints, Declarative Referential Integrity, data types, etc. in your schema are. Learn how to follow ISO-11179 data element naming conventions and formatting rules. Temporal data should
use ISO-8601 formats. Code should be in Standard SQL as much as possible and not local dialect.
This is minimal polite behavior on SQL forums. You also do not know the ANSI/ISO syntax for insertion and you did the old Sybase insertion kludge wrong, that we need keys, etc.
CREATE TABLE Foobar
(foo_seq INTEGER NOT NULL PRIMARY KEY,
glop_score INTEGER NOT NULL);
INSERT INTO Foobar
VALUE
(1,1),
(2,1),
(3,2),
(4,2),
(5,1);
>> How can I generate this data (created with this query SELECT 1 Amin, 2 Amax, 1 B UNION ALL SELECT 3, 4, 2 UNION ALL SELECT 5, 5, 1) <<
This makes no sense; you have the wrong syntax and mixed data types. My guess is:
SELECT MIN(foo_seg), MAX(foo_seq), MAX(glop_score)
FROM Foobar
GROUP BY glop_score
HAVING MIN(glop_score) = MAX(glop_score);
Amin Amax B
1 2 1
3 4 2
5 5 1
--CELKO-- Books in Celko Series for Morgan-Kaufmann Publishing: Analytics and OLAP in SQL / Data and Databases: Concepts in Practice Data / Measurements and Standards in SQL SQL for Smarties / SQL Programming Style / SQL Puzzles and Answers / Thinking
in Sets / Trees and Hierarchies in SQL -
Variable value from another variable
Hi all,
I created a query where one variable fill nother variable with following abap code:
when 'ZODACE'.
tables: /BIC/AZSD_O0100,
/BIC/AZSD_O0200.
ranges: r_createdon for /BIC/AZSD_O0100-CREATEDON.
break-point.
if i_step = 2.
loop at i_t_var_range into loc_var_range
where vnam = 'ZDATADOC'.
clear r_createdon.
r_createdon-low = loc_var_range-low.
r_createdon-high = loc_var_range-high.
r_createdon-sign = 'I'.
r_createdon-option = 'BT'.
append r_createdon.
exit.
endloop.
select DOC_NUMBER into
/BIC/AZSD_O0100-DOC_NUMBER
from /BIC/AZSD_O0100
where /BIC/ZAUDAT in r_createdon.
select single * from /BIC/AZSD_O0200
select * from /BIC/AZSD_O0200
where refer_doc = /BIC/AZSD_O0100-DOC_NUMBER.
clear l_s_range.
l_s_range-low = /BIC/AZSD_O0200-refer_doc.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
append l_s_range to e_t_range.
endselect.
endselect.
endif.
The variable are:
ZODACE based on IO 0REFER_DOC with customer exit
ZDATADOC based on IO ZDATU with manual entry
After wich end-user digit a data in ZDATADOC popup I take ODOC_NUMBER in order item ODS ZSD_O01 where ZDATADOC=CREATEDON.
With 0DOC_NUMBER I go to delivery item ODS ZSD_O02 and I take the corresponding 0REFER_DOC and then I fill variable ZODACE.
0REFER_DOC is in row of the query.
When I start the query I receive the following error message:
Error for variable in the customer exit ZODACE
and in debug i find this message:
System error in the program CL_RSR_REQUEST and Form GET_SETXX_WA
How can I do please?
Thanks in advance
Gianmarco0DOC_NUMBER type-CHAR lenght-10
0REFER_DOC type-CHAR lenght-10
ZAUDAT type-DATS lenght-8
0CREATEDON type-DATS lenght-8
Can you help me please?
Thanks a lot
Maybe you are looking for
-
Since I upgraded my anti-virus software to Trend Micro 2013, I now get this error message: "iTunes could not connect to the iTunes store. Make sure your network connection is active and try again." My internet connection is working fine. I suspect it
-
How do I prevent a new Firefox tab from opening when opening a PDF in Adobe.
First off, this issue started Monday, August 25th 2014 when I was forced to update Firefox in order to log into my online accounting program. I was not having this issue in the previous Firefox version. When I open a PDF document from an email (which
-
Inbound IDOC for Invoice failing at segment-E1EDK28- Incorrect BankAccNumbe
Hi SDNers, We have EDI - Invoice/Invoice Processing. Inbound Idoc failing at segment E1EDk28. This is because in segment E1EDK28 , 1. The field ACNUM has the value for Bank Account Number as N111111A. 2. This is incorrect. 3. This field should hav
-
Meeting Place 7.1 Scheduling recurring voice conference issue
Hello I am having an issue with Meeting Place 7.1, whenever we try to schedule a recurring voice conference we do not get the whole schedules that we need. For example If I try to schedule a conference daily for a month I don´t get schedule all the 3
-
Mac OS X 10.6 Snow Leopard update question
I am considering updating from os x 10.5.8 to os x 10.6.4 in order to use a software application that requires os x 10.6. Should I expect any performance issues with Final Cut Pro 6.0.1?