FIELD SYMBOL : - Get Data from Another program
Hi Gurus,
I have a Z program - ZPROG1.
I need to get the value of a variable V_VAR1 from program RV63A712 which is a routine.
How can i get the value of V_VAR1 from RV63A712 into my program ZPROG1. using field symbol .
The main program of RV63A712 is SAPLV61A.
For example .
The program RV63A712 is as below.
*& Form FRM_KOND_BASIS_712
Copper Price Participation
John May 09/01/2009
FORM frm_kond_basis_712.
V_VAR1 = B_KBETR + G_KWERT .
ENDFORM.
Avi
hello ,
try this sample code...
data: c_progvar(30) type c value '(RV63A712)V_VAL1'.
data: v_val1 type wrbtr.
field-sybmol: <fs> type any.
assign (c_progvar) to <fs>.
if <fs> is assigned.
v_val1 = <fs>.
endif.
regards
Prabhu
Similar Messages
-
Using a caculated field to get data from another table.
I have a Products Table that I need to add a field to. This field gains data from a Supplier table by using the supplier code to find the correct supplier type. All Products have a Supplier Code. So for example in SQL this would be a simple where statement looking something like this.
SELET Supplier.Type
From Supplier , Product
Where Supplier.Code = Product.SupplierCode
And ProductID = someID
How would you write this as a caculated field in MDM?Hi Chauncey
My previous post seems to have disappeared into the ether, so here it is again.
If you only want to do this linking for display purposes, then consider the following possibility:
The main Products table has a field which looks up to the flat table Suppliers. The flat table Suppliers has a field that either A) looks up to a flat SupplierTypes table or B) is a normal field in which the supplier type is stored. Inside the flat Suppliers table, just set both the SupplierCode and SupplierType fields to be display fields. MDM will automatically display both pieces of data inside the single field in the Products table.
If you need the SupplierType in a separate field then you cannot do this with an expression (calculation or assignment.) You'll need to write a piece of code using one of the MDM APIs in order to do this lookup.
HTH,
Mark -
Recieve data from another program
hi, i'm trying to recieve some kind of data from another program i know where is the output of the program the problem is that i don't know how to get these datas. for example my program is writing the output in a temporary file but i'd like to recieve these datas without a temp file. the question is: Is possible to make a class that be listening to the meddle and when any program send any data to its it recieves??? if yes how can i do it?
i'm working with girds and is easy to descover where my output will arrive the only problem is how to recieve.
ThanksOr a pipe. In unix you can create a named pipe with mkfifo, which can hadilly do this kind of transfer.
-
How can i get data from another database SQL Server use database link from
I have a database link from Oracle connect to SQL Server database with user cdit connect default database NorthWind.How can I get data from another database(this database in this SQL Server use this database link)?
hi,
u should see following documentation:
Oracle9i Heterogeneous Connectivity Administrator's Guide
Release 1 (9.0.1)
Part Number A88789_01
in it u just go to chapter no. 4 (using the gateway),,u'll find ur answer there.
regards
umar -
Best way To get data from another application using NDDE lbrary
My vb.net application gets data from another application using NDDE Library. I got stocks prices (open,high,low,close,volume,change......(about 15 records for each stock)) (about 200 stocks) . I don't know if there is a problem in my code.
This is my code:
l : is the list of stocks.
This Sub connects to server and requests the data :
Public Shared Sub GetQuotes()
Try
client1 = New DdeClient(server, topic)
client1.Connect()
For i As Integer = 0 To l.Count - 1
client1.StartAdvise("QO." & l(i).t & ".TAD$last", 1, True, 60000)
client1.StartAdvise("QO." & l(i).t & ".TAD$open", 1, True, 60000)
client1.StartAdvise("QO." & l(i).t & ".TAD$high", 1, True, 60000)
client1.StartAdvise("QO." & l(i).t & ".TAD$low", 1, True, 60000)
client1.StartAdvise("QO." & l(i).t & ".TAD$pclose", 1, True, 60000)
client1.StartAdvise("QO." & l(i).t & ".TAD$volume", 1, True, 60000)
client1.StartAdvise("QO." & l(i).t & ".TAD$date", 1, True, 60000)
client1.StartAdvise("QO." & l(i).t & ".TAD$time", 1, True, 60000)
Next
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
and then I get the data from Client_advise sub (called each time a value changed )and fill the list. What I know is that client advise gets only one record for single stock each time is called..
Example: for stock AAPL. 1st time enters client_Advise I get open price for AAPL, 2nd time I get high price for AAPL,3rd time I get low price..... and I update the value in the List (l)
This the client_Advise Sub:
Private Shared Sub client1_Advise(ByVal sender As Object, ByVal e As NDde.Client.DdeAdviseEventArgs) Handles client1.Advise
For q As Integer = 0 To l.Count - 1
If l(q).t = w(1) Then
Dim item() As String = e.Item.Split("$")
If l(q).Open = "#" Then
l(q).Open = "0"
End If
If l(q).hi = "#" Then
l(q).hi = "0"
End If
If l(q).lo = "#" Then
l(q).lo = "0"
End If
If l(q).Close = "" Or l(q).Close = "#" Then
l(q).Close = "0"
End If
If l(q).pclose = "#" Then
l(q).pclose = "0"
End If
If item(1) = "open" Then
l(q).Open = Format(Val(e.Text), "0.00")
ElseIf item(1) = "last" Then
l(q).Close = Format(Val(e.Text), "0.00")
ElseIf item(1) = "high" Then
l(q).hi = Format(Val(e.Text), "0.00")
ElseIf item(1) = "volume" Then
l(q).Volume = Val(e.Text)
ElseIf item(1) = "low" Then
l(q).lo = Format(Val(e.Text), "0.00")
ElseIf item(1) = "pclose" Then
l(q).pclose = Format(Val(e.Text), "0.00")
If l(q).pclose <> "" And l(q).pclose <> "#" And l(q).Close <> "" And l(q).Close <> "#" Then
l(q).c = Format(l(q).Close - l(q).pclose, "0.00")
l(q).cp = Format(((l(q).Close - l(q).pclose) / l(q).pclose) * 100, "0.00")
End If
l(q).flag1 = 2
ElseIf item(1) = "date" Then
l(q).Date1 = e.Text
ElseIf item(1) = "time" Then
l(q).Time = e.Text
End If
Exit For
End If
Next
End Sub
Am I doing something wrong which inreases CPU usage to 80 or 90 % ?
Thanks in advance.Hi MikeHammadi,
According to your description, you'd like to get data from another app using NDDE library.
When using the NDDE library, the CPU usage is high. As the NDDE library is third-party library, it is not supported here. I suggest you checking if the problem is caused by the NDDE library.
If you'd like to get data from another app. I suggest you could save the data in the dataBase, and then read it in another application if necessary.
If you have any other concern regarding this issue, please feel free to let me know.
Best regards,
Youjun Tang
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. -
To get data from another user?
Hi,
I am in "scott" user. I need to use the data from another user for example user "sys". i know the database name(i.e.user@database), but i dont know the password of that user.
I think by using dblink it is possible. If it is correct then Is there any other way for this? If dblink is not correct way then please reply the correct way.
Thanks & Regards,
ShyamYou only need to use a database link if the data is in another database instances.
If you want to query data in another users schema on the same database you just need to have rights to do so. You either need to have
select any table system privilage granted to the user (not recommended for security reasons)
be granted select privalage on the object from the user
be granted a role that has select privelges on the object you want to query.
If you log in as system to the database you can grant select on the object to scott
sql> grant select on <schema>.<table> to scott;
now logged in as scott you can select from the table
sql> select * from <schema>.<table>
where <schema> is the other user and <table> is the name of the table that you want to select from. -
Using Field symbol to fetch data from another program
I have a requirement where i need to fetch value of a field from one of the function pool so i have written a sample progam to check the logic but its doest seems to work its giving dump.
Basically i want to know how to use <programname><fieldname> with fieldsymbol.
REPORT ztest1.
DATA test(25) VALUE 'ggg'.
submit ztest.
report ztest.
constants: lv_memory(25) type c value '(ZTEST1)TEST'.
field-symbols: <fs2> type char25 .
assign (lv_memory) to <fs2>.
write : <fs2>.
I am getting same field symbol assignment dumpHi Rahul,
You can use this concept in between the FUNCTION MODULES where both are
under same FUNCTION GROUP ( as both the FM's have same global memory area ).
And also if you are calling an FM or method from your program ,you can have the data of the calling program in that called FM or METHOD.
Hope this may help you.
Regards,
Smart Varghese -
Using Java to Log Data from another program
I have a program that I want to log data from while the program is running. The program has a textarea that gets updated with data from the internet. I want to be able to read this textarea and store the data so it can be analyzed later.
I don't know what the program was written in, only that it is running on Windows.
Can Java "watch and read" another program?i think that easyest way would be to listen for network traffic and then parse relevant information from there...
you could make a java app to act as proxy for that programm (maybe) and then log everything that goes through socket, or if you don't want to do that, then you could also use some other software that can listen network and look from there information that intrests you...
of other softwares id recommend somekind of Iris soft that i used 3-4 years ago... realy easy to use nd runs on windows as well... even better would be ngrep, but i don't know if it has any windows versions... -
SSRS Expression to compare two values and get data from another dataset
Hi,
I have a requirement where in i need to compare a value of a dataset (not the one which table is poiting to)
with the value of a text box, and return the count if it matches else 0, the expression is as below. Here
industryName and recCount are from the dataset ds_MedimOrLowImpactEntities. whats wrong in this expression
=Sum(IIF(Fields!industryName.Value = reportItems!hpapra_name.Value, Fields!RecCount.Value, 0), "ds_MediumOrLowImpactEntities")
This is the error that i am getting:
Any help on this is appreciated
Kruthi HegdeHi Kruthi,
After testing the issue in my local environment, I can reproduce it. Just the error message said, “Aggregate function can be used only on report items contained in page headers and footers”. So the sum function that contains report items should be stayed
at page headers or footers. Besides, you said the hpapra_name textbox contain a field from another dataset, not the ds_MedimOrLowImpactEntities dataset. While in Reporting Services, Report item expressions can only refer to other report items within the same
grouping scope or a containing grouping scope. So consider the two issues, we should use some other expression to instead the “reportItems!hpapra_name.Value” expression.
Take a look at the "Looking up values from another dataset" topic here:
http://msdn.microsoft.com/en-us/library/ms159673.aspx#LookupFunctions
Hope this helps.
Thanks,
Katherine Xiong
Katherine Xiong
TechNet Community Support -
How get data from another web page?
I have my own interface..after i key In a keyword and click search, method post will post the data to server and server will response.write a HTML page that display the result based on the keyword i Key In. The problem is i want the result display on my own page. So how can i read the search result from the HTML page and display on my own design page? I use JSP to built my page. thanks
I dont know the following solution would solve ur problem, atleast u will get basic idea.
1st method
Create an inline frame (IE-IFrame etc), On pressing submit button, Post the data to required page (it might be some page on another server)and specify post target is ur inline frame.
if u want filter the result data and want to display in ur own way then send ur POST request to ur own JSP and use Http classes to read resend those data to other page (another server) and capture the results implement ur own logic to get desired data and resend to the requested browser
I hope it would solve ur problem
Cheers
Rajendra Bandi -
Get date from another TimeZone
Hi,
I have to get the time from a timezone that is not the current timezone. So, I do the following:
TimeZone timeZone = TimeZone.getTimeZone("America/La_Paz");
Calendar calendar = Calendar.getInstance(timeZone);
long longTime = calendar.getTime().getTime();
Time time = new Time(longTime);
If I print the time using:
wdComponentAPI.getMessageManager().reportSuccess(time.toString());
the output is right, but when I set this same Time instance to a context element (with Time type) that is linked to an InputField, that InputField shows me the time of the current TimeZone.
Any Ideas?
Thanks in advance
Michel Cabral
Edited by: Michel Amaral on Feb 7, 2008 8:58 PMMichel-
Introduce this method in your -others- section of your controller:
private Time getDateInTimeZone(Date currentDate, String timeZoneId)
TimeZone timeZone = TimeZone.getTimeZone(timeZoneId);
Calendar aCal = new GregorianCalendar(TimeZone.getTimeZone(timeZoneId));
aCal.setTimeInMillis(currentDate.getTime());
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, aCal.get(Calendar.YEAR));
cal.set(Calendar.MONTH, aCal.get(Calendar.MONTH));
cal.set(Calendar.DAY_OF_MONTH, aCal.get(Calendar.DAY_OF_MONTH));
cal.set(Calendar.HOUR_OF_DAY, aCal.get(Calendar.HOUR_OF_DAY));
cal.set(Calendar.MINUTE, aCal.get(Calendar.MINUTE));
cal.set(Calendar.SECOND, aCal.get(Calendar.SECOND));
cal.set(Calendar.MILLISECOND, aCal.get(Calendar.MILLISECOND));
return new Time(cal.getTimeInMillis());
Usage:
Time t = getDateInTimeZone(new Date(), "PST");
Create an attribute of type time in your context and set it to this value.
Cheers-
Atul -
How to get data from other programs output?
Hi gurus,
I have told to do the following can you please help me out.
In SM35 created many batch no. The user would like to know automatically when the session is not ok (error status).
In return of the first program RSBDCBTC_SUB we will get the queues ie QID and QSTATE.
I have told to create new Z-prog.
In that Z-prog how can i get list of QID from the result (Output) of the first prog(RSBDCBTC_SUB )?
How i get that particular QIDs in my Z-prog?
Thanks in advanced.Hi
Senthis,
You can use IMPORT and EXPORT or SET and GET
IF you take the F1 help on these KEY words it will take you to the KEY word documentation where you can find an example
of Go to TCode ABAPDOCU
where you can find an example for the same
Regards
Ramchander Rao.K -
How to get data from another view on the RFx to populate bidders web dynpro
i am trying to populate bidders in the table on the bidder tab when a user click a button based on the line item data. How do i have access to get the line item since it is in a separate component controller and view for the RFx? thanks you.
Hi,
You mean Data transfer between two components..
To pass the value from one component to other component, you can use used component scenario.
For example let use assume we have two comp ..
Comp A,
Comp B.
now we need to pass the value from Comp A to Comp B.
Then declare the Comp A as used component in Comp B.
Now then you can create a node in the comp A component controller and check the interface check box there then the
node and the attribute will be present in the interface controller also .
and this interface controller context you can access in the component and map it to view there and display it.
Webdynpro Application Integration..
http://wiki.sdn.sap.com/wiki/display/WDABAP/WebdynproApplicationsIntegration
cheers,
Kris. -
Formula in Fields and get data from fields together
Hi, I was trying to setup formula in fields as follows:
U_Test & U_Test are numeric fields.
SELECT ($[INV1.U_Test.Number]-$[INV1.U_Test3.Number])*0.1
The outcome should be (U_Test-U_Test3)*0.1
U_Test2 & U_Test5 are alphnumeric fields.
SELECT $[INV1.U_Test2]+[INV1.U_Test5])
The outcome should be U_Test2U_Test5
I have been struggling in the syntax error. Can you help me out?
Thanks.
RaymondI think better u can create the UDF again.
Test - Numeric - 10
Test1 - Numeric - 10
Then use this query
Select $[$38.U_Test.number] + $[$38.U_Test2.number]
I hope UDF can be case sensitive. It is working properly for me.
Sample:
Select case when ($[por1.U_x.number] *$[por1.U_y.number]) > 15 then 15 else ($[por1.U_x.number] *$[por1.U_y.number]) end
here x,y are UDF created as numeric.
SAGAR -
Checking whether field-symbol from another program is assigned?
Hi all
I'm attempting to access a FS from another program.
As the FS can be assigned, or unassigned within that program, how do I checked for that in my calling program?
e.g. calling program;
FIELD-SYMBOLS: <fs> TYPE STANDARD TABLE.
DATA: lv_var(40) type c.
lv_var = '(ZTGT_PROG)<read_fs>'.
ASSIGN (lv_var) TO <fs>. " statement might dump...Hi
Go through this doc and use accordingly
Field Symbols
Field symbols are placeholders or symbolic names for other fields. They do not physically reserve space for a field, but point to its contents. A field symbol cam point to any data object. The data object to which a field symbol points is assigned to it after it has been declared in the program.
Whenever you address a field symbol in a program, you are addressing the field that is assigned to the field symbol. After successful assignment, there is no difference in ABAP whether you reference the field symbol or the field itself. You must assign a field to each field symbol before you can address the latter in programs.
Field symbols are similar to dereferenced pointers in C (that is, pointers to which the content operator * is applied). However, the only real equivalent of pointers in ABAP, that is, variables that contain a memory address (reference) and that can be used without the contents operator, are reference variables in ABAP Objects.
All operations programmed with field symbols are applied to the field assigned to it. For example, a MOVE statement between two field symbols moves the contents of the field assigned to the first field symbol to the field assigned to the second field symbol. The field symbols themselves point to the same fields after the MOVE statement as they did before.
You can create field symbols either without or with type specifications. If you do not specify a type, the field symbol inherits all of the technical attributes of the field assigned to it. If you do specify a type, the system checks the compatibility of the field symbol and the field you are assigning to it during the ASSIGN statement.
Field symbols provide greater flexibility when you address data objects:
If you want to process sections of fields, you can specify the offset and length of the field dynamically.
You can assign one field symbol to another, which allows you to address parts of fields.
Assignments to field symbols may extend beyond field boundaries. This allows you to address regular sequences of fields in memory efficiently.
You can also force a field symbol to take different technical attributes from those of the field assigned to it.
The flexibility of field symbols provides elegant solutions to certain problems. On the other hand, it does mean that errors can easily occur. Since fields are not assigned to field symbols until runtime, the effectiveness of syntax and security checks is very limited for operations involving field symbols. This can lead to runtime errors or incorrect data assignments.
While runtime errors indicate an obvious problem, incorrect data assignments are dangerous because they can be very difficult to detect. For this reason, you should only use field symbols if you cannot achieve the same result using other ABAP statements.
For example, you may want to process part of a string where the offset and length depend on the contents of the field. You could use field symbols in this case. However, since the MOVE statement also supports variable offset and length specifications, you should use it instead. The MOVE statement (with your own auxiliary variables if required) is much safer than using field symbols, since it cannot address memory beyond the boundary of a field. However, field symbols may improve performance in some cases.
check the below links u will get the answers for your questions
http://help.sap.com/saphelp_nw04/helpdata/en/fc/eb3860358411d1829f0000e829fbfe/content.htm
http://www.sts.tu-harburg.de/teaching/sap_r3/ABAP4/field_sy.htm
http://searchsap.techtarget.com/tip/1,289483,sid21_gci920484,00.html
Syntax Diagram
FIELD-SYMBOLS
Basic form
FIELD-SYMBOLS <fs>.
Extras:
1. ... TYPE type
2. ... TYPE REF TO cif
3. ... TYPE REF TO DATA
4. ... TYPE LINE OF type
5. ... LIKE s
6. ... LIKE LINE OF s
7. ... TYPE tabkind
8. ... STRUCTURE s DEFAULT wa
The syntax check performed in an ABAP Objects context is stricter than in other ABAP areas. See Cannot Use Untyped Field Symbols ad Cannot Use Field Symbols as Components of Classes.
Effect
This statement declares a symbolic field called <fs>. At runtime, you can assign a concrete field to the field symbol using ASSIGN. All operations performed with the field symbol then directly affect the field assigned to it.
You can only use one of the additions.
Example
Output aircraft type from the table SFLIGHT using a field symbol:
FIELD-SYMBOLS <PT> TYPE ANY.
DATA SFLIGHT_WA TYPE SFLIGHT.
ASSIGN SFLIGHT_WA-PLANETYPE TO <PT>.
WRITE <PT>.
Addition 1
... TYPE type
Addition 2
... TYPE REF TO cif
Addition 3
... TYPE REF TO DATA
Addition 4
... TYPE LINE OF type
Addition 5
... LIKE s
Addition 6
... LIKE LINE OF s
Addition 7
... TYPE tabkind
Effect
You can define the type of the field symbol using additions 2 to 7 (just as you can for FORM parameters (compare Defining the Type of Subroutine Parameters). When you use the ASSIGN statement, the system carries out the same type checks as for USING parameters of FORMs.
This addition is not allowed in an ABAP Objects context. See Cannot Use Obsolete Casting for FIELD SYMBOLS.
In some cases, the syntax rules that apply to Unicode programs are different than those for non-Unicode programs. See Defining Types Using STRUCTURE.
Effect
Assigns any (internal) field string or structure to the field symbol from the ABAP Dictionary (s). All fields of the structure can be addressed by name: <fs>-fieldname. The structured field symbol points initially to the work area wa specified after DEFAULT.
The work area wa must be at least as long as the structure s. If s contains fields of the type I or F, wa should have the structure s or at least begin in that way, since otherwise alignment problems may occur.
Example
Address components of the flight bookings table SBOOK using a field symbol:
DATA SBOOK_WA LIKE SBOOK.
FIELD-SYMBOLS <SB> STRUCTURE SBOOK
DEFAULT SBOOK_WA.
WRITE: <SB>-BOOKID, <SB>-FLDATE.
Related
ASSIGN, DATA
Additional help
Declaring Field Symbols
Reward points if useful
Regards
Anji
Maybe you are looking for
-
How can I get rid of duplicate entries in iPad iCal?
This is kind of a repeat and I apologize, but I have duplicate entries now in my iCa on my iPad because of iOS5? Others on this same topic said something about deleting the whole iPad calendar. Before I did that, I wanted to be sure, that if I delet
-
How do I save documents from the new Pages into a Word Document
How do I save documents from the new Pages into a Word Document?
-
How to set a location of a JFrame using mouseListener?
Hi, I was wondering how i could set the location of a JFrame using the mouseListener? I know when i want to show a JPopMenu i can do: pop.setLocation(e.getX(), e.getY()); pop.setInvoker(null); By using .setInvoker(); I can show the jpopup on the posi
-
DMS Error 26136 - File coule not be accessed
HI, I am facing this issue wherein a user is getting this error "File could not be accessed- Message 26136" when trying to open the original from SAPGUI. Also the lock is open in the SAPGUI but the DIR Change History (Environment--> Display changes)d
-
Question about exceptions in function module GUI_DOWNLOAD
To all, I add the function module 'GUI_DOWNLOAD' in the ABAP report program. After the user download the data to excel, the program also displays a report on the screen for print output. If the user keep the excel file open and tries to replace the f