Are application variables 'user specific'?
hi - i've got a feeling i may have done something stupid.
we have several domains all pointing to one application.
in application we look at the cgi.http_host to work out which
site the domain the user is expecting and then serve up customised
content accordingly.
only this is i've set put the customised content in
application scoped vars - is that a bad move?
eg. in application.cfm i have:
<cfif cgi.http_host eq 'www.redredred.com' >
<cfset application.message= "welcome - we love the colour
red" >
<cfelseif cgi.http_host eq 'www.blueblueblue.com' >
<cfset application.message= "welcome - to our site where
we love blue" >
<cfelse>
<cfset application.message= "welcome to our site (we love
all colours)" >
</cfif>
then in the index.cfm:
<cfoutput>#application.message#</cfouput>
is there a chance that by doing this someone who has visited
www.redredred.com will get a message about blue?
happysailingdude wrote:
>
> is there a chance that by doing this someone who has
visited www.redredred.com
> will get a message about blue?
>
Not only a chance, but there is something wrong if the person
does not
get this message, once the next user has set the variable to
blue.
Application variables are global to the application and will
be shared
by all users of that application. That is the designed and
desired
purpose of application variables.
In ColdFusion an application is defined by any template that
shares the
same 'name' as defined in either the name parameter of a
<cfapplication...> tag or the this.name property of an
Application.cfc file.
If all these web sites are using the same string for the
application
name then they share the same application scope and they will
all have
the same value for application.message. And this value will
be the
value set by the last visitor to any of the sites.
<cflock...> is not relevant to this issue. It will
prevent the variable
from being set at the exact same moment by multiple users on
multiple
sites, but it will not stop the value from changing
sequentially as
first one, then another user visits any of these sites and
changing the
value.
The solution to your problem is to set different application
scopes by
dynamically setting the application name. Thus each website
will be
separate and distinct applications with their own application
scope
variables and your system should behave the way desired.
Similar Messages
-
Hi
while debugging whether it is possible to have a <b>user-specific breakpoint???</b> if so gimme idea how to make it???
Thanks in advanceABAP Debugger
The ABAP Debugger is an integrated test tool within the ABAP Workbench. You use it to check the program logic and to find errors in the source code of an ABAP program. In the Debugger, you can step through the source code of a program. The running program is interrupted after each step, allowing you to check its processing logic and the results of individual statements.
As of Release 6.10, you can also run Business Server Pages (BSP) in the debugging mode. You can also display and set breakpoints here. Business Server Pages can be displayed in the Object Navigator when you select an appropriate application under BSP Application.
Features
The Debugger provides an efficient means of identifying errors in ABAP programs. It contains the following functions:
Ways of starting the Debugger
Choosing different views
Choosing different execution options in the Debugger
Displaying source code in the Debugger
Setting and deleting breakpoints
Setting and deleting watchpoints
Stopping a program at a particular statement or event
Displaying and changing field contents at runtime
Displaying ABAP Objects and references
Displaying and positioning strings
Setting and deleting database locks
Opening the ABAP Editor, or Object Navigator
System settings and runtime warnings
Starting the Debugger
There are two possible strategies for starting the Debugger in the ABAP Workbench:
By setting breakpoints then running the program
By running the program in debugging mode.
Setting Breakpoints
A breakpoint is a signal in a line of code that tells the ABAP runtime processor to interrupt the program at that line and start the ABAP Debugger. A distinction is made between static and dynamic breakpoints. For further information about the different types of breakpoints and how to use them, refer to Breakpoints.
Running a Program in Debugging Mode
You can start the Debugger without previously having set breakpoints. This is the best procedure to use when you want to test a program right from the beginning. It is also useful if you do not know the program very well and therefore are not sure where best to set breakpoints. You can start the Debugger as follows:
From the Object Navigator Select a report or transaction and program and choose Program Test Debugging.
From the ABAP Editor Choose Program  Execute  Debugging (or the Debugging pushbutton).
From any screen Choose System  Utilities  Debug ABAP.
From any screen Enter " /h " in the command field.
Checking System Programs for Errors
To check a program or program component that is part of the ABAP Workbench (for example, the Screen Painter), you must use the system Debugger. To start the system Debugger, choose
System  Utilities  Debug system from any screen. To stop the system Debugger, choose Debugger  Debugging off.
Displaying Program Attributes
You can display the attributes Fixed point arithmetic, System program and Unicode checks active of the program that has just been executed by choosing Goto  Further Information  Program Attributes.
Display Modes in the Debugger
When you are debugging a program, there are various display modes that you can use. All of the display modes have the same structure. The top part of the screen displays an extract of the program source code. The bottom part displays the information specifically available in that display mode. There are also pushbuttons on the screen allowing you to switch to the most frequently-used display modes.
Display Modes Available Using Pushbuttons
Fields The scrollable field display contains the contents of up to eight fields. The contents of the three most important system fields are always displayed. This is the default display mode in the Debugger. See also Processing Fields
Table Displays the contents of an internal table. This mode allows you to display and edit the entries in an internal table. See also Processing Internal Tables
Breakpoints A scrollable display containing up to 30 breakpoints. Next to each breakpoint is a counter. You can also delete breakpoints in this display. See also Managing Dynamic Breakpoints
Watchpoints You can set a watchpoint for a field so that the program is interrupted whenever the value of that field changes. This display mode contains a list of watchpoints, the fields and programs to which they are assigned, the current values of the fields, and the conditions upon which the watchpoint is activated. See also Setting Watchpoints
Calls This mode displays the current sequence of events, and the sequence of calls up to the current breakpoint. The last active call is displayed at the top of the list; previous calls are listed in reverse chronological order. When an event (for example, START-OF-SELECTION) concludes, it is deleted from the display.
Overview This mode displays the structure of the program. It lists its events, subroutines, and modules, and shows which sections belong to which events. It also displays the section currently being processed.
Settings This mode displays the current Debugger settings. You can change the settings by selecting or deselecting various options. For further information, refer to Settings and Warnings
Other Display Modes
You can access other display modes by choosing Goto  Display data object.
Single field Displays the contents and technical attributes of a field.
Structured
field Displays the components of a structure, along with their contents and attributes. If you double-click a component, the system displays detailed information for it.
Strings Display the content and current length of the string. You can also display part of the content by means of offset and length.
Internal table Displays the type, line numbers and contents of an internal table.
Object Displays the structure of an ABAP Object.
For further information on these displays, refer to Displaying Attributes and Displaying ABAP Objects
Breakpoints
Instead of starting an ABAP program directly in the Debugger, you can also debug a program by creating one or more breakpoints in the program. A breakpoint is a signal at a particular point in the program that tells the ABAP runtime processor to interrupt processing and start the Debugger. The program runs normally until the breakpoint is reached.
There is also a special kind of breakpoint called a watchpoint. When you use watchpoints, the Debugger is not activated until the contents of a particular field change. For further information, refer to Watchpoints.
Breakpoint Variants
The Debugger contains different breakpoint variants:
Static The BREAK-POINT statement in an ABAP program. Static breakpoints are not normally user-specific. However, you can make them user-specific.
Directly-set
dynamic breakpoints Can be set in the ABAP Editor or the Debugger. Dynamic breakpoints are always user-specific, and are deleted when you log off from the R/3 System.
Breakpoint
at statement The Debugger stops the program directly before the specified statement is executed.
Breakpoint
at subroutine The Debugger stops the program directly before the specified subroutine is called.
Breakpoint at function module The Debugger stops the program directly before the specified function module is called.
Breakpoint at method The Debugger stops the program directly before the specified method is called.
Breakpoints at system exceptions The Debugger stops the program directly after a system exception, that is, after a runtime error has been intercepted.
Use
Static Breakpoints
Static breakpoints are not normally user-specific. Once a user has inserted a BREAK-POINT statement in an ABAP program, the system always interrupts the program at that point. You should only use static breakpoints during the development phase of an application. You should set static breakpoints whenever more than one programmer is working on the same program and you always want to stop the program in the same place.
Dynamic Breakpoints
Dynamic breakpoints are user-specific. You should, therefore, use them when you only want the program to be interrupted when you run it yourself. All dynamic breakpoints are deleted when you log off from the R/3 System.
Dynamic breakpoints are more flexible than static breakpoints, because you can deactivate or delete them at runtime. They have the following advantages:
You do not have to change the program code
You can set them even when the program is locked by another programmer
You can define a counter (for example, only activate the breakpoint after it has been reached five times).
Special Dynamic Breakpoints
Special dynamic breakpoints are useful when you want to interrupt a program directly before a particular ABAP statement, a subroutine, or an event, but do not know exactly where to find it in the program code. Event here is used to refer to the occurrence of a particular statement, for
example, or calling up a method. Special dynamic breakpoints are user-specific. You can only set them in the Debugger.
Transferring Breakpoints to HTTP and Update Sessions
If an HTTP or update session is called from a Logical Unit of Work (LUW), new work processes are started for these new sessions. Breakpoints that were defined beforehand in the calling LUW are copied to these sessions where they can be displayed under breakpoints.
If, for example, the update module func is called via CALL FUNCTION func IN UPDATE TASK, the new work process is displayed in a second window if Update debugging was selected under Settings in the debugging mode. All the breakpoints that were set in the calling LUW can then be processed here.
Static Breakpoints
You should only use static breakpoints during the development phase of an application. You must remove them from your program before you transport it.
Setting Breakpoints
To set a static breakpoint, use the ABAP statement BREAK-POINT . Place the breakpoint in the line at which you want to interrupt the program.
program RSDEBUG_01.
if SY-SUBRC <> 0.
break-point.
endif.
When you run the program, the runtime processor interrupts it when the breakpoints occur. You can number your breakpoints to make them easier to identify ( BREAK-POINT 1, BREAK-POINT 2 ).
Static breakpoints are not normally user-specific. The program is, therefore, always interrupted as soon as the runtime processor reaches the line containing the breakpoint. The program is interrupted regardless of the user who executes it.
However, you can set user-specific static breakpoints using the BREAK statement followed by your user name. For example, if you use the statement BREAK SMITH , the program is only interrupted when user Smith runs it. Although user-specific breakpoints appear in the program code, they are not active when other users run the program. You should, however, be careful if an application is being used by several users with the same name.
Deleting Breakpoints
Since static breakpoints apply to all users, you must remove them from the program once you have finished testing it. In the ABAP Editor, you can find breakpoints quickly by choosing Utilities  Global search. You can also use the Extended Program Check to find them.
If you do not remove static breakpoints from your program, they will be transported to your production system. This could cause serious problems in the production system.
Dynamic Breakpoints
You can set up to 30 dynamic breakpoints without changing the program code. Dynamic breakpoints can be set either in the ABAP Editor or directly in the Debugger.
Setting Dynamic Breakpoints in the ABAP Editor
You can set dynamic breakpoints in the ABAP Editor regardless of whether you are in display or change mode. You can also set breakpoints directly from within the Debugger at runtime. To set a dynamic breakpoint in the ABAP Editor:
1. Position the cursor on the line of the source code at which you want to set the breakpoint.
example, or calling up a method. Special dynamic breakpoints are user-specific. You can only set them in the Debugger.
Transferring Breakpoints to HTTP and Update Sessions
If an HTTP or update session is called from a Logical Unit of Work (LUW), new work processes are started for these new sessions. Breakpoints that were defined beforehand in the calling LUW are copied to these sessions where they can be displayed under breakpoints.
If, for example, the update module func is called via CALL FUNCTION func IN UPDATE TASK, the new work process is displayed in a second window if Update debugging was selected under Settings in the debugging mode. All the breakpoints that were set in the calling LUW can then be processed here.
Static Breakpoints
You should only use static breakpoints during the development phase of an application. You must remove them from your program before you transport it.
Setting Breakpoints
To set a static breakpoint, use the ABAP statement BREAK-POINT . Place the breakpoint in the line at which you want to interrupt the program.
program RSDEBUG_01.
if SY-SUBRC <> 0.
break-point.
endif.
When you run the program, the runtime processor interrupts it when the breakpoints occur. You can number your breakpoints to make them easier to identify ( BREAK-POINT 1, BREAK-POINT 2 ).
Static breakpoints are not normally user-specific. The program is, therefore, always interrupted as soon as the runtime processor reaches the line containing the breakpoint. The program is interrupted regardless of the user who executes it.
However, you can set user-specific static breakpoints using the BREAK statement followed by your user name. For example, if you use the statement BREAK SMITH , the program is only interrupted when user Smith runs it. Although user-specific breakpoints appear in the program code, they are not active when other users run the program. You should, however, be careful if an application is being used by several users with the same name.
Deleting Breakpoints
Since static breakpoints apply to all users, you must remove them from the program once you have finished testing it. In the ABAP Editor, you can find breakpoints quickly by choosing Utilities  Global search. You can also use the Extended Program Check to find them.
If you do not remove static breakpoints from your program, they will be transported to your production system. This could cause serious problems in the production system.
Dynamic Breakpoints
You can set up to 30 dynamic breakpoints without changing the program code. Dynamic breakpoints can be set either in the ABAP Editor or directly in the Debugger.
Setting Dynamic Breakpoints in the ABAP Editor
You can set dynamic breakpoints in the ABAP Editor regardless of whether you are in display or change mode. You can also set breakpoints directly from within the Debugger at runtime. To set a dynamic breakpoint in the ABAP Editor:
1. Position the cursor on the line of the source code at which you want to set the breakpoint.
You can use this kind of dynamic breakpoint to interrupt a program directly before a function module is called.
Prerequisites
You must already be running the program in the Debugger.
Procedure
To set a breakpoint for a function module:
1. Choose Breakpoint  Breakpoint at  Function module...
2. Enter the name of the function module before which you want to interrupt the program. The system sets a breakpoint wherever the specified event, module pool, or subroutine occurs in the program code.
3. Choose ENTER.
Result
If you entered a valid function module name, the system confirms that the breakpoint has been set. If the function module exists in the system, the new breakpoint is added to the display list.
Breakpoints at System Exceptions
You can use this special form of dynamic breakpoint to interrupt a program immediately after a runtime error has occurred.
Prerequisites
You must already be running the program in the Debugger.
Procedure
To set a breakpoint at a system exception:
Choose Breakpoint  Breakpoint at  System exception.
Result
The system confirms the breakpoint. The breakpoint is added to the breakpoints displayed.
When a system exception is triggered, a warning triangle appears in the line containing the statement that caused it. If you double-click the warning triangle, the internal name of the runtime error appears.
Saving Breakpoints
If you want to leave the Debugger temporarily, you can save your dynamic breakpoints so that they are still active when you return to the Debugger within the same terminal session.
To save the breakpoints that you have set in the Debugger:
Choose Breakpoint  Save.
The system saves all of the breakpoints that you have set in the current program. These breakpoints will remain active until you either explicitly delete them or log off from the system.
You can also delete breakpoints that you have saved:
By deleting individual breakpoints from the display and then saving again. In this case, only your selected breakpoints will be deleted.
By choosing Breakpoint  Delete all. In this case, the system deletes all dynamic breakpoints.
Managing Dynamic Breakpoints
The ABAP Debugger provides a convenient user interface for managing breakpoints. To open the breakpoint display, choose Breakpoints, or, from the menu, Goto  Control debugging  Breakpoints.
Functions
This display mode contains the following functions for breakpoints:
Breakpoint Display
The scrollable breakpoint display contains up to 30 dynamic breakpoints. For breakpoints that you set directly, the program name and line number at which the breakpoint occurs are displayed. For special breakpoint forms, the list displays the statements, events, subroutines, and module calls at which the relevant breakpoints are set.
Counter
In the breakpoint display, you can specify a counter. When you use a counter, the breakpoint is not activated until it has been reached a specified number of times. For example, if you enter 5 for the counter, the breakpoint is not activated until it is reached for the fifth time. After the breakpoint has been activated, it remains so, and the counter no longer appears in the breakpoint display.
Deleting Breakpoints
Position the cursor on the breakpoint that you want to delete, and either double-click the line or choose Breakpoint  Set/delete. To delete all breakpoints, choose Breakpoint  Delete all.
Activating and Deactivating Breakpoints
Position the cursor on the breakpoint that you want to activate or deactivate and choose Breakpoint  Activate/deactivate.
http://www.sap-img.com/abap/testing-and-debugging-abap-codes-functions.htm
http://help.sap.com/saphelp_47x200/helpdata/en/c6/617ca9e68c11d2b2ab080009b43351/frameset.htm
For debugging tutorial:
http://help.sap.com/saphelp_erp2005vp/helpdata/en/5a/4ed93f130f9215e10000000a155106/frameset.htm
http://www.sapdevelopment.co.uk/tips/debug/debughome.htm
http://www.sap-basis-abap.com/sapab002.htm
Chaeck the following documents,
http://www.cba.nau.edu/haney-j/CIS497/Assignments/Debugging.doc
http://help.sap.com/saphelp_47x200/helpdata/en/c6/617ca9e68c11d2b2ab080009b43351/content.htm
http://www.cba.nau.edu/haney-j/CIS497/Assignments/Debugging.doc
http://help.sap.com/saphelp_erp2005/helpdata/en/b3/d322540c3beb4ba53795784eebb680/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/84/1f624f4505144199e3d570cf7a9225/frameset.htm
http://help.sap.com/saphelp_bw30b/helpdata/en/c6/617ca9e68c11d2b2ab080009b43351/content.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/b3/d322540c3beb4ba53795784eebb680/frameset.htm
Hope you can get all the required information from the above documents.
Reward points if helpful. -
User-Specific Variable in Web Interface
I have created a manual planning layout with User-Specific variables one for Sale Group and one for Sales District.
The variable successfully restricts user access to data when executed in SAP GUI.
A Web Interface was successfully generated from the Planning Folder containing the manual planning layout described above.
When I execute planning via the web, all possible values are displayed, even though the User-Specific variable limits this user to a single value for each variable.
Is there a way to restore the restriction defined in the User-Specific variable ?
I saw an earlier thread indicating that the Planning Level property of the Selector Variable Value for each variable used in the Web Interface Builder had to be set - but that field is protected from input.
Any insights would be appreciated !
Thanks,
LyleNarasimha,
Each variable was created as :
- Replacement Type = User-Defined Values.
- Restriction of Values required by User = OFF.
- Input Allowed by User = OFF.
Several users are defined within each variable.
Most users represent Sales Representatives, with a single value assigned to each a single Sales Rep is assigned a single Group and District ( i.e one-to-one relationship ).
The other type user represents a Sales Manager, and includes all the values assigned to the Sales Reps reporting to him.
When Restriction functionality is turned on, the following error message is received :
Restrict variable UDSALDST (Sales District - User-Defined) (area ZBILLIC (IC Billings Estimate)) to single value
<b>Diagnosis</b>
Variable UDSALDST (Sales District - User-Defined) (planning area ZBILLIC (IC Billings Estimate)) is defined so that the user must restrict the values of the variable (indicator 'Restriction of values required by user' is set). However, you have not defined a restriction.
<b>Procedure</b>
Restrict the variable or change the definition of the variable so that restriction is no longer required.
To restrict the variable, choose Goto -> Set variables and search for variable UDSALDST (Sales District - User-Defined) in the list. Make the restriction and subsequently continue the planning session.
To change the variable definition, choose the tab page Variables in the context of planning area ZBILLIC (IC Billings Estimate) and reset the indicator 'Restriction of values required by user'.
While the first option ( Goto > Set Variables ) seems to defeat the purpose of a User-Specific variable, I tried it. When I use F4 to determine available values, it displays those previously assigned when creating the User-Specific variable !? this doe not seem to add any more than I already have.
The second option effectively puts me back to where I was when I posted the question.
Of interest though, I noticed when the Restriction functionality was turned on, the All value previously displayed as available for selection was no longer available but the specific values for each of the other Sales Reps continue to be reflected, and this user can select values related to another Sales Rep..
As mentioned in my original posting,
I saw an earlier thread indicating that the Planning Level property of the Selector Variable Value for each variable used in the Web Interface Builder has to be set but that the field is protected from input.
Should this object property be open to permit input ? If so, is there a step or setting that needs to be performed. Could authorization be an issue ?
Thanks,
Lyle -
BPS User-Specific Variables by Web
Hi,
I'm triyng to setup a CC planning interface for my company.
I configured the levels and layouts and they work fine.
I run the interface with the planning folders and everything works fine but when I setup the Web Interface tha layout stops working. The message is something like "Variable XXXX can't be specified".
I'm using user specific variables in the planning level so every user can only see and modificate certain CCs.
Any ideas?
Thank you very much.Alejandro,
Sorry, I had been at a new client this week doing a review and it is long hours so have not checked back.
The other discussions groups I participate on is e-mail based so only checking here when I have a block of time.
What type of cost center variable are you using? on 0costcenter or on the hierarhcy? Are you using variable with user specific value or with of type authorization or something else?
did you configure the web interface using web enabled layout or using Web interface buillder?
Mary -
Clear BPS user-specific variable values
Hi,
Is there a way to quicly delete all the variable values (user ID and cost center) for a user-specific variable in BPS without access to the configuration (BPS0) or do I need to write a small piece of ABAP for that ?
Thanks
DavidHello David,
You either have to access the BPS0 and delete each of the variable values or write a little ABAP program. You could include this ABAP in a planning function type Exit so the user can press a button in a web interface or planning folder to delete the settings. The coding using internal methods you need is:
DATA:
lr_variable TYPE REF TO cl_sem_variable.
Get variable instance
CALL METHOD cl_sem_variable=>get_instance
EXPORTING
i_area = 'name of area where the variable is defined'
i_variable = 'name of the variable'
RECEIVING
rr_variable = lr_variable
EXCEPTIONS
not_existing = 1
OTHERS = 2.
IF sy-subrc <> 0.
do s.th., eg send a message
EXIT.
ENDIF.
delete the restrictions
CALL METHOD lr_variable->set_user_restriction
EXPORTING
i_user = 'user name, e.g. sy-uname'
i_delete = 'X'
EXCEPTIONS
failed = 1
OTHERS = 2.
Best regards,
Gerd Schoeffl,
SAP NetWeaver RIG BI -
How to list all calendars that are shared to a specific user?
Hi,
Using Exchange Management Shell/Powershell, I want to list all calendars that are shared to a specific user 'myuser'.
I have tried different approaches; list all calendars for all users and then figure out which ones are shared to 'myuser', list all mailboxfolders for 'myuser' with path 'calendar' and sort out the shared ones, ... No luck so far.
Anybody?
babuHi
If you try this command:
Get-MailboxPermission MyUser -
User-specific Selection Variables in Variants
Hi,
I am triing to follow the tutorial in the help.sap.com concerning the variants.
http://help.sap.com/saphelp_47x200/helpdata/en/c0/980386e58611d194cc00a0c94260a5/frameset.htm
I would like to create a User-specific Variables for a variant.
I created set/get param for my report, I also created entries in the user master record. But: In the variants maintenance tool (SE38). First I edit the attributes of my variables and choose the selection variable option for some fields. Second I highlight in green the user specific column stoplight. But clicking F4 doesnt propose any value. Then saving doesnt work neither.
Thank you,
YounesUmar,
When I click on the button save a modal popup it says "Variables not supplied with values. Save anyway?". I dont know how to supply the variables with values.
With the Function module VARI_USER_VARS_GET I am not able to Read existing variable values. Also in the selection screen of my report the menu Goto -> User variables is not enabled. Maybe I am missing something? Could you help me.
Thanks,
Younes -
Error in Application log SCOM mgmt server 25934 Credentials are null for user
Hi, We recently started getting errors like the one shown below on one of our SCOM management servers.
Any thoughts on what might be causing this and why this shows on a scom server. There is no VMM stuff installed on this SCOM server.
Thanks in advance.
System
Provider
[ Name]
Microsoft.SystemCenter.VirtualMachineManager.2012.Report.VMUsageCollection
EventID
25934
[ Qualifiers]
0
Level
2
Task
0
Keywords
0x80000000000000
TimeCreated
[ SystemTime]
2014-01-28T18:08:24.000000000Z
EventRecordID
287618
Channel
Application
Computer
XXXX
Security
EventData
Credentials are null for user:
Thanks LanceHi,
If agent is installed on the VMM server, it will collect the information and send it to SCOM server. The event indicates the SCOM agent tried to access the registry key that was included in the User Profile but failed.
Please specify a local account or domain account as the SCOM action account for a test.
Niki Han
TechNet Community Support -
This is an message when I open up CS4 in Illustrator. "Some plugins in additional plugins folder are conflicting with application or user plugins. It will skip loading plugins from additional plug-ins folder? What does this mean and how can I fix it?
Thanks Larry. I thought so. I will do this weekend. Again, I appreciate your help.
Trying to get updated software – I am not a fan of the cloud stuff. Nothing I can do about it.
Thanks again Larry! -
Clear Flag for BPS user-specific variable values
Hi Experts!
I have a 'user-specific variable' settintg with the flag 'on', then the user should choose only one value.
But now I need execute an abap program which read all values available for this variable. For this reason, I need clear this flag with abap code, and after put on again.
Could somebody show me a small piece of abap code for this?
Thank you in advance!Hi,
Analysis of your question:
<i>Second line of your question "...<b>which read all values available for this variable</b>".</i>
1) When you mean you wish to read all possible values with which the variable could be filled up, then please use the Function Module:
UPC_CHA_VALUES_GET
The parameter <b>ETO_CHAVL</b> would then return all master data of the variable's characteristic
2) When you mean you wish to read all the variable values "<b>selected from the user in the past</b>" then use the function module
API_SEMBPS_VARIABLE_GET_DETAIL
Here the table <b>ETK_VARSEL_ALL</b> returns you all the values selected by user in the past. The "<b>current selected value</b>" for the user is stored in the table "ETK_VARSEL".
Check out these How-To Documents. If these dosen't suffices, then please elaborate your requirement, for me to write a ABAP Pseudo-code.
<a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/324de5a1-0201-0010-dc9a-a093cde87bb5">How to use Reporting Variables in BPS</a>
<a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/650ee690-0201-0010-4bb7-83c3e2a74039">How to variable of type Exit</a>
Many regards. -
Access applications only for specific users
In our production server, we have some testing. But we cannot put the application down. But at the point i want only 2-3 users to access applications.
Hi user;
Please check:
11i - R12 - How To Lock Users Out Of E-Business Suite And Allow Specific Users [ID 605538.1]
How To Prevent (LOCK) Users From Logging In To Keep Them Out Of Applications As Needed? [ID 964070.1]
Hope it helps
Regard
Helios -
No user-specific shop papers are defined
Hello Experts,
While trying to print the notification the above mentioned error is given ( No user-specific shop papers are defined).
In customisation, the setting for shop paper has been done as * (star) for user, i.e it means its applicable for all users, still the error prevails.
Please help to fix this ....
Regards
Rahul ChitteTo Start with
1.Quality Management -->Quality Notifications --> Notification Processing -->Print Control.
Enter " N" for notification
2.Define Shop Papers---->
Output program RQQMUD01( or your own )
Form Routine PRINT_PAPER
Form Make sure that you have entered correct form
3.Assign shop paper to Notification type---->make sure that you have selected both correctly
4.Define printer -
>In User Its better if you create a user Gr or Profile instead of " * "
(ex check profile Q_QMEL A Process all quality notifications completely) or simply keep it blank
.Enter the shop paper you have created -
Problem with application-variables - CFLOCK?
Hi,
i have a problem with my application. It is a multi-user
application with 100 parallel-users and CFMX 7.
The problem wich occures is with application variables. These
are mainly structs wich get filled onApplicationStart(). The
problem is, that the variables suddenly disappear, they are empty.
I have read about CFLock and found out, that it is necesseary
to use cflock. And i found out, that onApplicationStart does
correct locking automatically. That is where i do not understand
the problem. The variables get intialized correctly and in further
they only get read-access. Why can they be corrupted?
My other question about that is, wheather i need cflock for
all Read-Access to Application and Session-Variables, even if there
happens no writing to the variables?
Best Regards,
Andreas> ?The element of position 2, of dimension 2, of an array
object used as part of
> an expression, cannot be found.?
> The array is in this case the struct.
Well, OK, that could be a problem. Arrays are not structs:
they are two
different things, are not interchangeable, and have
completely different
sets of functions to utilise them. You cannot treat a struct
as an array.
If CF is claiming your "struct" is an array, then it actually
*is* an
array, not a struct.
What's the line of code which is generating that error?
I suppose one could get this error if you have an array of
structs thus:
myArray
.key1
myArray.key2
(etc)
and you're trying to reference it with a numeric key rather
than by key
name, eg:
myArray
[n]
When n is an integer value, rather than a string (which
corresponds to the
name of the key).
> > Have you trapped the error, done a <cfdump>
of the application scope and
> > checked to see if it's the whole lot going awry, or
just some values?
> I have not used cfdump for it, because the server had to
be immediately
> restarted for our customers. But i think, that it is
not completely empty,
> because the index runs to pos2 of dimenstion2.
So does this not happen in your dev / testing environment?
> Will
> onApplicationStart() be called before? Or only if
onRequestStart() returns true?
I would ***-u-me that the application one would be called
before the
request one. It's pretty easy for you to test this though, I
should think?
(Sorry: for reasons beyond the scope of this conversation,
we're still
forced to use Application.cfm in our software, so I've only a
passing
knowledge of how Application.cfc works).
> Here is the code from onRequestStart()
> <cffunction name="onRequestStart"
returntype="boolean">
> <cfargument name="Requestedpage" required="yes" />
> <cfscript>
> var lFile = "/cargorent/Login.cfm";
> var iPosn = ListFindNoCase( lFile,
Arguments.Requestedpage );
> if( iPosn gt 0 )
> return true;
>
> if( NOT IsDefined( "session.user.Loginname" ) or
session.user.Loginname eq
> "" )
> {
> WriteOutput( "<p><p> The current user is no
longer valid, please log in
> again.</p></p>" & chr(10) & chr(13)
> WriteOutput( "<script
language=""javascript"">parent.location = ""
http://"
> & CGI.HTTP_HOST &
"/Login/Login.cfm"";</script>" );
> return false;
> }
>
> return true;
> </cfscript>
> </cffunction>
One thing I will say here is that I really think you should
be separating
your processing from your display. A function should do
processing. it
should pass that processing back to a CFM template which
should handle
whatever needs to be displayed on the browser. Although
that's nowt to do
with your current issue.
Adam -
How to properly partition separate Root, Applications, and Users volumes?
Wondering if there's an official Apple recommended method to set Applications and Users directories on different physical Volumes (be it a separate partition or separate physical drive).
The bottom of this Apple document alludes to this by stating, "Divide hard disk space into partitions and then, for example, keep your applications in one section and your documents in another."
http://docs.info.apple.com/article.html?path=Mac/10.5/en/8769.html
I'd like to do this, but there seems to be issues with symbolic linking from some of the solutions out there. Not sure if Apple has a sanctioned method that won't be incompatible with some Applications and/or future upgrades.
Thanks in advance for anybody's insight.ArborWoody,
The concept of using separate volumes and/or drives to store system, HOME folders, applications, and even swap files separately has been debated, tested, then debated some more time and time again for many years. The findings are that, without doubt and in all realistic cases, jumping through convoluted hoops doesn't get you anything. Nothing at all.
Given the lack of any real benefit, plus the complexity of making the attempt, to do so is folly. The best advice we could give you would be to forget all about doing this, or in fact doing anything but keeping things just as they are in the default configuration of OS X.
Notice, however, that one thing I mentioned above is "HOME folders." I specifically did not mention "user data." While one's HOME folder typically contains user data, the two things are not the same. In very many cases, it is in fact beneficial to store certain types of user data on a second volume or drive. What type of data, and where it would be best to store that data, would be determined entirely by one's workflow environment and the uses to which that data will be put.
It could be that a striped RAID array is the solution that would work best for you. Or, you may instead be best served by using a mirrored RAID array. In some cases, external storage is best. In others, not so much.
One of the important issues you mention is facilitation of backup and recovery. Absolutely! The answer is Time Machine. Or, perhaps Time Machine and the maintenance of a "clone" (not something I do, but popular nonetheless). But what does Time Machine do for us? Simple. It is designed to allow us to quickly and easily recover from potential disaster, up to and including the loss of a startup drive or even an entire machine (this second possibility assumes that the TM backup is stored externally or on a safe drive, of course).
What can we do to enable Time Machine to do its job most effectively? This, too, is pretty simple. Just keep our startup volume as "slim" as we can. Not by moving HOME folders or applications, but by common-sense file management, tailored to the specific usage to which this machine is dedicated. Perhaps more importantly, more pertinent to this thread, moving one's applications or HOME folders off the startup volume actually interferes with Time Machine's ability to do its job. For an example of the effects of this interference, just take a look at this fun thread.
Scott -
Performance: Database Update vs. Application variable
I am new to ColdFusion, so sorry if this has been covered before. I searched and couldn't find anything similar.
I am building an online Texas Hold'em poker application using ColdFusion and Flex. There are quite a few things that need to be stored on the server side that will be updated quite often and these objects will need to be accessed by multiple users. For example, think of something like the current pot between players on a table, or the current hand state (who's turn it is to check/bet/raise), or the current players in the hand. All of these things will be updated quite a few times per hand, and if you add to that that each of these will be different per table, it adds up quick.
Would it be better to store these things in the database or store them in an application variable? Or is there a better way that I am not thinking of? Is there any sort of metric to follow for these kinds of things?I don't think you'll find a documented general number of application variables you can have on a single server. But I think you could get away with 400 variables without any trouble.
Where you might run into trouble, though, is when you have multiple concurrent requests trying to read and change these values. You'll have to ensure that you single-thread write access to these variables using CFLOCK.
Dave Watts, CTO, Fig Leaf Software
http://www.figleaf.com/
http://training.figleaf.com/
Fig Leaf Software is a Veteran-Owned Small Business (VOSB) on
GSA Schedule, and provides the highest caliber vendor-authorized
instruction at our training centers, online, or onsite.
Maybe you are looking for
-
I am trying to compile an applet
Hi, I am trying to run an applet with JDK, but I keep getting this message can anyone tell me how to correct this error. thanks
-
Why can't I resize my movie cover art. I'm not blind!
There used to be a slider bar to re-size the movie cover art. It's gone and they appear to be sized for the blind!
-
My macbook pro says Shockwave Flash plug-in has crashed pretty much every day. I have to shut the computer down and restart to fix it. Is there any way I can keep this from happening?
-
Hi , i use oracle forms 10g, win xp pack2 .. hi , how to render not-editable item(its value unchanged) when i press a boutton ?? Edited by: 979155 on 1 janv. 2013 16:27 Edited by: 979155 on 1 janv. 2013 18:43
-
USB ports not working after downloading I tunes 10.1
After downloading I tunes 10.1, as prompted by I tunes, , I got the device not recognized message for my IPOD. Also, a bonjour error message. I un installed and re installed as per instructions and still had the problem worse-none of the USBs are wor