Unable to get xAxis and yAxis label in report
Hi,
I am creating a timeSeriesChart under Report tab for one of my Plugin. As per the management plugin guide, I am trying to get a display label against my X-axis and Y-axis coordinates. But in the final report there are no labels displayed for X axis and y axis.
l_param_values := MGMT_IP_PARAM_VALUE_LIST();
l_param_values.extend(4);
l_param_values(1) := MGMT_IP_PARAM_VALUE_RECORD(
'oracle.sysman.eml.ip.render.elem.sqlStatement',
'SELECT MD.COLUMN_LABEL, MD.COLLECTION_TIMESTAMP, MD.Value
FROM MGMT$METRIC_DETAILS MD WHERE MD.TARGET_TYPE=''my_custom_plugin''
AND MD.METRIC_NAME=''SNChasActualTemperature''
AND MD.TARGET_GUID=??EMIP_BIND_TARGET_GUID??
ORDER BY MD.COLLECTION_TIMESTAMP'
l_param_values (2) := mgmt_ip_param_value_record (
'oracle.sysman.eml.ip.render.elem.ChartParamController.chartType',
'timeSeriesChart'
l_param_values (3) := mgmt_ip_param_value_record (
'oracle.sysman.eml.ip.render.elem.ChartParamController.width',
'400'
l_param_values (4) := mgmt_ip_param_value_record (
'oracle.sysman.eml.ip.render.elem.yAxisLabel',
'Degree Celcius'
l_param_values (5) := mgmt_ip_param_value_record (
'oracle.sysman.eml.ip.render.elem.yAxisLabel',
'Time'
l_curr_order := l_curr_order + 1;
l_curr_row := l_curr_row + 1;
l_element_guid := mgmt_ip.add_element_to_report_def (
p_report_guid => l_report_guid,
p_element_name_nlsid => 'IPMSG_USER_CHART_FROM_SQL',
p_element_type_nlsid => 'IPMSG_ANY_TARGET_TYPE',
p_header_nlslid => 'Chassis Actual Temperature',
p_element_order => l_curr_order,
p_element_row => l_curr_row,
p_parameters => l_param_values ,
p_targets => null
Any pointers would be surly of great help.
Regards
Sanjay
Hi Sanjay,
Use 5 instead of 4 in the l_param_values array declaration line:
l_param_values.extend(4);
Also, "oracle.sysman.eml.ip.render.elem.yAxisLabel" should be "oracle.sysman.eml.ip.render.elem.ChartParamController.yAxisLabel". The extensibility guide doc has a typo (does not include ChartParamController in the namespace) and this will be addressed in the next update.
and you have "yAxisLabel" twice. I assume one of these you intend to be "xAxisLabel" except "xAxisLabel" is not supported (this value is implicit).
Regards,
-- Craig
Edited by: cfowler on Feb 4, 2010 1:49 PM
Similar Messages
-
How can I get the values on Xaxis and Yaxis?
Hi, I would like to get the values that are on the axis X and Y or to get the base value and the ticks interval for calculating the values.
You can get the base values and intervals via the following properties:
XAxis.MajorDivisions.Base
XAxis.MajorDivisions.Interval
XAxis.MinorDivisions.Base
XAxis.MinorDivisions.Interval
YAxis.MajorDivisions.Base
YAxis.MajorDivisions.Interval
YAxis.MinorDivisions.Base
YAxis.MinorDivisions.Interval
Note that calculating the values from these properties will only work if the axis AutoSpacing property is false. Otherwise, the ticks and labels are automatically determined by the graph depending on the available space to present something that always looks nice.
- Elton -
I am completely unable to get autoresponders and forwarding to work
I have the auto-responder enabled in the Worldclient view with text and when I run a report from the system it shows it is enabled, but for the life of me I just can't get an auto-responder to fire. Any ideas on how to troubleshoot this???
If the latestmegabreach at the Office of Personnel Management(OPM) taught us anything, it's that paranoia, preparation, and testing your networks are essential ingredients to keep your organization secure. And there's one tool that combines these ingredients: penetration testing.But when it comes to penetration, where do you start?CSO spoke with penetration test tool creator, designer, and enthusiast Evan Saez about whatpen testing tools are available and the distinctions between them.1. Metasploit
According to Saez, Metasploit is one of the more popular pen testing tools currently available. That's because it features "a large programmer fan base," with each programmer contributing his, or her, own modules on Bitbucket and GitHub for custom testing. Metasploit is all tied together with asingle free program.2. Nessus Vulnerability... -
SAPUI5 Viz select Xaxis and Yaxis values
The following code gives me a nice line chart as shown below:
//Code snippet to create dataset
var oDataset1 = new sap.viz.ui5.data.FlattenedDataset({
dimensions : [{axis : 1,name :'BUSINESS_DATE', value :"BUSINESS_DATE"}]
measures : [{name : 'Profit', value : '{Profit}'}],//Define the Y-axis parameter
data : {path : "/GRAPHDATA",filters: [oFilter1,oFilter2,oFilter3],parameters: {select: 'BUSINESS_DATE,PROFIT'}}}); //set the data and filter
Define line chart:
var oLineChart = new sap.viz.ui5.Line({width : "100%",height : "300px",
//plotArea : {'colorPalette' :['#748CB2','#FFC200']},
title : {visible : true,text : 'BusinessDate Vs Profit'},
dataset : oDataset1,
selectData : function(oEvent) {
alert("Need to extend code");
Now, when I click on a single data point, I need to get the values of both X-axis and Y-axis of that data point selected. Is there a possibility of such thing in SAPUI5?
I am already trying this:
selectData : function(oEvent) {
var yAxisIndex= oEvent.getParameter("data"[0].data[0].ctx.path.dii_a1);
console.log(yAxisIndex);
console.log(oModel3.getProperty("/GRAPHDATA"+('"+yAxisIndex+"')"+"/BUSINESS_DATE")); }
But the problem I am facing with this, I have explained it here Re: selectData SAPUI5 viz
Could anyone suggest how this could be done? Any example solutions. Thanks in advance.Hello
See if you can start from here, rather than selectData use attachSelectData
var oLineChart = new sap.viz.ui5.Line({width : "100%",height : "300px",
//plotArea : {'colorPalette' :['#748CB2','#FFC200']},
title : {visible : true,text : 'BusinessDate Vs Profit'},
dataset : oDataset1,
attachSelectData: function(oEvent) {
alert(oEvent.mParameters.data[0].data[0].val);
I haven't done much with this but, tell me if it works for you -
Unable to get stubs and skeletons
hai..
im new to rmi..
help me plz...
here i do have four java files..
G:/sen/rmi>
AddServerIntf.java
AddServerImpl.java
AddServer.java
AddClient.java
i compiled these four files
G:sen/rmi> javac AddServerIntf.java AddServerImpl.java AddServer.java AddClient.java
successfully compiled and got class files..
G:/sen/rmi>
AddServerIntf.class
AddServerImpl.class
AddServer.class
AddClient.class
then i wanted to create stubs and skeletons...so i did the below thing..
G:sen/rmi> rmic AddServerImpl
bt im getting below error..
error: Class AddServerImpl not found.
1 error
here i didnt use any packages in these four java files..and i have four class files in G:/sen/rmi>..
did i do any mistakes..?
should i do anything before use rmic....?
plzzz help me..
thanks in advance..(a) Are these classes in a package? say 'rmi'?
If so, you should be in the directory containing the package when you compile and when you run rmic, and you should provide the fully qualified class name to rmic, e.g. rmic rmi.AddServerImpl.
(b) Skeletons haven't been needed since 1998, and haven't been produced by rmic except on special request since 1.5. -
Lumia 635- Unable to get emails and connect to Cor...
Can,t get my emails or connect to cortana
Moderator's Note: Post was moved to the appropriate board and amended the title.You'll have to provide more information on these two problems.
For your e-mail, have you been able to successfully set up the account(s)? Are there any error messages?
For Cortana, it is available in a limited number of markets so a lot depends on your regional settings. Assuming that it's available in your country and your settings are correct, then again - are there any error messages or what happens when you try to access it? -
$115/month for wireless broadband ( that works 5-10% of the time) for ONLY 15GB a month is the price?? Surely this is wrong.
There is no justification for a price so large for so little data for a service that barely works. Apparently we can't get ADSL because of A: no ports and B: pair gains line to the house. ( Both of which i've seen no proof of) Why is this a problem now when 5 years ago it wouldnt have been??? I've lived 40km's out of town and had perfectly fine internet connection, now I live 4 minutes out of town and can't get it. I must not have been put onto the correct technical support or the people I'm talking to don't know what they're doing.
Because it barely works now I have to use my phone, which adds a huge amount to my phone bill because phones only have 2-4gb of data. There's no other way of putting it other than we are being robbed in broad daylight. This is now the 3rd month I've been negotiating with Telstra about these charges.
So who do I talk to to either get an ADSL connection and surely this price is wrong or just hasn't been updated? $115 for 15gb, everyone I've talked to has laughed and thought I was joking.
Have tried negotiating with Telstra for months now, as I said must be getting the wrong people. Have called the Ombudsman and was put onto someone who just spent a longer time telling me we can't have ADSL.
There is absolutely no justification for the price and for not being able to have ADSL.Hi mate First of all, it sucks but telstra is not robbing you or doing anything wrong. When they say there is no "ports" they are correct, and it means there are physically no "spots" or "connection points" left at your local telephone exchange to connect an ADSL service or for that matter even just a "normal" landline connection. When the exchange was built no one could have predicted the massive future demand for internet. There are so many more houses, units, sub divisions etc then was forseen by ANYONE, not just telstra, combined with an insane increase in the amount of data demanded by each service. You asked about being put on a "pair gain" system. It's basically just a way of running multiple services down the one line- technical name is multiplexing. They invested in that technology so you would at least have a voice service, but as the line is already being used for more than originally designed for there's no way it could support a fast internet connection also. As for your location, when you were further out of town there would have been far less demand for ports, now you live in a city where the demand is much much higher. Disregarding that, it's often just a lottery whether you end up in a suburb with spare ports or not. Now look, telstra is a private company with shareholders to answer to, so why would they do anything which is not profitable in the end? They owe you nothing!! In fact my family and thousands of other aussies own telstra shares and i cant say i'd be happy if they were flushing our money away. These days internet is almost an essential utility which is why the PUBLIC sector is building the NBN. So if everyone will have that soon and copper will be redundant, why would telstra continue upgrading the old network in the meantime just to lose every dollar they spend? It does really suck but there's entire suburbs which can't get ADSL for the reason that they were built after the NBN was announed. As for mobile broadband, yes it's expensive. It's also quite expensive for telstra to provide it and their mobile towers are very limited in their total data output. This is why you pay far more for less. The more data people are downloading the less calls the tower can take. A single phone tower can often only support labout 200 calls simultanously., with some bigger towers with multiple carriers supporting around 1000. a single fast ADSL2 connection can get 20mbps peaks, well that 1000 call tower could only take about 12 x 20mbps internet downloads before it's maxxed out- thats with zero calls. Now think about how many people have mobile phones these days and what a critical service it is. The result is that carriers have to put a low cap the 3g/4g data allowances and aggressively price home wifi broadband Because the number of phone calls is highly variable and being the higher priority service, your internet speed will always depend on the number of calls being made. The tower will always drop your internet to bare minimum to try and connect every phone call if possible. In a way telstra, optus etc are just maximising their investments by selling off their "spare" 3g/4g tower bandwidth, it's super expensive but it's your choice too. They spent the money building the network so it's their reward for doing so. All you can really do sorry apart from moving is go on a waiting list for a spare port and wait for the NBN. The NBN will probably come before a spare port sorry!
-
Im having lots of bother with my Mac Mail I cant recieve or send it . On checking I noticed the incoming mail server box in my Account is blank and it refuses to let me type anything in it so stays blank . what can i do? help please.
Could I ask you to amend your signature - you can see why it's a good idea.
The first step for you would be to sign out in System Preferences>iCloud then sign back in again, enabling Mail and any other data types in the checklist there. This should set up Mail automatically for you - you shouldn't need to enter any settings yourself.
Your data will disappear from your Mac when you sign out, but will reappear when you sign back in. -
Unable to get another schema for the same Report!
Hi All,
I've created a report with data retrieved from three different schema's, but when I add a fourth schema with it's name before the query retrieved and run the report, it gives me that: table or view does not exist!
Why does the report get the three schema's and refused the fourth one!? and how to solve the problem?
Note: I am using reports 6i.HI,
Make sure the connected user has sufficient privilege on that table.
Regards,
Manu. -
Localization of CrossTab row and column label Crystal Report RPT file
Dear all,
Does anyone know how to support multiple locale texts (English and French) in CrossTab Row and Column Header labels and grand total labels? Is there a way to parameterize text objects CrossTab in one single Crystal Report RPT file to use some sort of locale resource file containing text string for different languages based on the users of RPT at runtime? The idea is to use one single RPT file to generate report for different locale text for CrossTab Row and Column abels and grand total labels instead of creating RPT files per locale?Hi,
Does the database have a column that identifies the language? If it does, then you could create two separate cross-tabs and place them in different sections and conditionally suppress the section depending on the language from the database.
That's the only thing that can be done in my opinion.
-Abhilash -
I am unable to get Google after I downloaded Firefox, do you have a solution?
I just downloaded Firefox on my laptop and now I am unable to get Google and I can not access my email. I hope you have a solution.
DarleneMaybe also do a malware check with some malware scanning programs on the Windows computer.<br />
You need to scan with all programs because each program detects different malware.<br />
Make sure that you update each program to get the latest version of their databases before doing a scan.
*http://www.malwarebytes.org/mbam.php - Malwarebytes' Anti-Malware
*http://www.superantispyware.com/ - SuperAntispyware
*http://www.microsoft.com/security/scanner/en-us/default.aspx - Microsoft Safety Scanner
*http://www.microsoft.com/windows/products/winfamily/defender/default.mspx - Windows Defender: Home Page
*http://www.safer-networking.org/en/index.html - Spybot Search & Destroy
*Kasperky Free Security Scan: http://www.kaspersky.com/security-scan
You can also do a check for a rootkit infection with TDSSKiller.
*http://support.kaspersky.com/viruses/solutions?qid=208280684
See also:
*"Spyware on Windows": http://kb.mozillazine.org/Popups_not_blocked -
ATV 3 (a1469) 7.1 cannot get time and date
Hello!
My Apple TV (3 gen) with software 7.1 is unable to get time and date and activate. As a consequence, ATV has very limited functionality because I can't even access iTunes or iCloud.
I tried recovering ATV by plugging it to the compuer using iTunes (on both PC and Mac), tried to connect ATV to another wi-fi network, tried plugging ethernet cable.
"time.apple.com" is accessible from my network, ping goes well.
What can I do to fix it?I tried both leaving settings on default values and setting correct places, didn't change anything.
I also tried to downghrade firmware to earlier versions but failed due to "unknown error". -
Hi, I tried to download a bunch of my favourite TV episodes. I was unable to get them all due to lack of storage. I increased my storage but the downloads didn't come. I tried deleting the already downloaded and viewed episodes but don't know how.
I'm wondering if I should increase my storage again but I'm not sure that's the issue.You need more storage on your iPad, however, it can't be increased. iCloud storage is ecternal to the iPad and is used for backup.
You need to delete some item on the iPad.
How much space is used by your Other? You may be able to reduce.
How Do I Get Rid Of The “Other” Data Stored On My iPad Or iPhone?
http://tinyurl.com/85w6xwn
With an iOS device, the “Other” space in iTunes is used to store things like documents, settings, caches, and a few other important items. If you sync lots of documents to apps like GoodReader, DropCopy, or anything else that reads external files, your storage use can skyrocket. With iOS 5/6/7, you can see exactly which applications are taking up the most space. Just head to Settings > General > Usage, and tap the button labeled Show All Apps. The storage section will show you the app and how much storage space it is taking up. Tap on the app name to get a description of the additional storage space being used by the app’s documents and data. You can remove the storage-hogging application and all of its data directly from this screen, or manually remove the data by opening the app. Some applications, especially those designed by Apple, will allow you to remove stored data by swiping from left to right on the item to reveal a Delete button.
There are some wireless external hard drives that can be used with the iPad.
Best iPad External Hard Drive Storage Options
http://www.unlocktips.com/2012/11/best-ipad-mini-external-hard-drive-memory-stor age-options/
iPad Storage Solutions
http://www.ipadstoragesolutions.com/iPadWirelessStorage.php
SanDisk Connect Wireless Media Drive http://www.sandisk.com/products/wireless/media-drive/
Another option:
Expand your iPad's storage capacity with HyperDrive
http://www.macworld.com/article/1153935/hyperdrive.html
On the road with a camera, an iPad, and a Hyperdrive
http://www.macworld.com/article/1160231/ipadhyperdrive.html
Cheers, Tom -
My iphone 5 got suddenly slipped into recovery mode when i was updating my phone with the latest update. I request the officials to act fast and come up with a recovery solution because the phone is unable to get restored on itunes due to "error 3" when ever i am trying to restore and neither of the istores have the solution for the same.
Hi, Milanista5
Thank you for visiting Apple Support Communities.
When experiencing issues restoring or updating an iPhone, here are the best articles to go through. If you received a specific error number when restoring, see the section labeled Get more help in the second article below.
iOS: Unable to update or restore
http://support.apple.com/kb/ht1808
iOS: Troubleshooting update and restore issues
http://support.apple.com/kb/ts1275
Cheers,
Jason H. -
Unable to get Material No and Description from VBAP
Hi Gurus
Can anyone please help me to get material number and description from vbap table, The report is fine but I am unable to get material no and description.
regards
report ZCHGDOC_BY_SALES no standard page heading
line-size 132.
type-pools:
slis. " ALV types
Tables
tables:
cdhdr, " Change documents: Header
cdpos, " Change documents: Items
vbak, " Sales order: Header
mara, " Material No
user_addr, " User Address
vbap. " Contract order: Items
Types
types:
begin of ty_cdhdr,
objectclas like cdhdr-objectclas, " Object class
objectid like cdhdr-objectid, " Object value
changenr like cdhdr-changenr, " Document change number
username like cdhdr-username, " Changed by
udate like cdhdr-udate, " Changed on
utime like cdhdr-utime, " Changed at
tcode like cdhdr-tcode, " Transaction code
end of ty_cdhdr,
ty_it_cdhdr type ty_cdhdr occurs 0,
begin of ty_cdpos,
objectclas like cdpos-objectclas, " Object class
objectid like cdpos-objectid, " Object value
changenr like cdpos-changenr, " Document change number
tabname like cdpos-tabname, " Table name
tabkey like cdpos-tabkey, " Table key
fname like cdpos-fname, " Field name
chngind like cdpos-chngind, " Change indicator
value_new like cdpos-value_new, " New value of field
value_old like cdpos-value_old, " Old value of field
end of ty_cdpos,
ty_it_cdpos type ty_cdpos occurs 0,
begin of ty_dd03l,
tabname like dd03l-tabname,
fieldname like dd03l-fieldname,
as4local like dd03l-as4local,
as4vers like dd03l-as4vers,
rollname like dd03l-rollname,
end of ty_dd03l,
ty_it_dd03l type ty_dd03l occurs 0,
begin of ty_dd04t,
rollname like dd04t-rollname,
ddlanguage like dd04t-ddlanguage,
as4local like dd04t-as4local,
as4vers like dd04t-as4vers,
scrtext_l like dd04t-scrtext_l,
end of ty_dd04t,
ty_it_dd04t type ty_dd04t occurs 0,
begin of ty_kna1,
kunnr like kna1-kunnr, " Customer number
name1 like kna1-name1, " Customer name
end of ty_kna1,
ty_it_kna1 type ty_kna1 occurs 0,
begin of ty_user_addr,
bname like user_addr-bname, " user no
name_textc like user_addr-name_textc , " Username
end of ty_user_addr,
ty_it_user_addr type ty_user_addr occurs 0,
begin of ty_vbap,
matnr like vbap-matnr, " Material No
arktx like vbap-arktx, " Production Description
end of ty_vbap,
ty_it_vbap type ty_vbap occurs 0,
ty_text(500) type c,
ty_lines type tline,
ty_it_lines type ty_lines occurs 0,
begin of ty_merged,
vbeln like vbak-vbeln, " Sales order number
erdat like vbak-erdat, " Created on
auart like vbak-auart, " Order type
faksk like vbak-faksk, " Billing block in SD document
netwr like vbak-netwr, " Net value
waerk like vbak-waerk, " Currency
vkorg like vbak-vkorg, " Sales organisation
vtweg like vbak-vtweg, " Distribution channel
vkbur like vbak-vkbur, " Sales office
fkara like vbak-fkara, " Proposed billing type
kunnr like vbak-kunnr, " Sold-to party
bname like vbak-bname , " User No
xblnr like vbak-xblnr, " Reference
fbuda like vbkd-fbuda, " Date services rendered
username like cdhdr-username, " Changed by
udate like cdhdr-udate, " Changed on
utime like cdhdr-utime, " Changed at
tcode like cdhdr-tcode, " Transaction code
tabname like cdpos-tabname, " Table name
tabkey like cdpos-tabkey, " Table key
fname like cdpos-fname, " Field name
chngind like cdpos-chngind, " Change indicator
value_new like cdpos-value_new, " New value of field
value_old like cdpos-value_old, " Old value of field
scrtext_l like dd04t-scrtext_l, " Description of field
intnote type ty_text, " Internal note
hdrnote type ty_text, " Header note
name1 like adrc-name1, " Sold-to party name
matnr like vbap-matnr, " Material No
arktx like vbap-arktx, " Product Description
end of ty_merged,
ty_it_merged type ty_merged occurs 0,
begin of ty_vbak,
vbeln like vbak-vbeln, " Sales order number
erdat like vbak-erdat, " Created on
auart like vbak-auart, " Order type
faksk like vbak-faksk, " Billing block in SD document
netwr like vbak-netwr, " Net value
waerk like vbak-waerk, " Currency
vkorg like vbak-vkorg, " Sales organisation
vtweg like vbak-vtweg, " Distribution channel
vkbur like vbak-vkbur, " Sales office
fkara like vbak-fkara, " Proposed billing type
kunnr like vbak-kunnr, " Sold-to party
xblnr like vbak-xblnr, " Reference
objectid like cdhdr-objectid, " Change document object
end of ty_vbak,
ty_it_vbak type ty_vbak occurs 0,
begin of ty_vbkd,
vbeln like vbkd-vbeln, " Sales order number
posnr like vbkd-posnr, " Sales order item
fbuda like vbkd-fbuda, " Date services rendered
end of ty_vbkd,
ty_it_vbkd type ty_vbkd occurs 0.
Internal tables
data:
it_cdhdr type ty_it_cdhdr,
it_cdpos type ty_it_cdpos,
it_fieldcat type slis_t_fieldcat_alv,
it_kna1 type ty_it_kna1,
it_user_addr type ty_it_user_addr,
it_merged type ty_it_merged,
it_vbak type ty_it_vbak,
Material No
it_vbap type ty_it_vbap,
it_vbkd type ty_it_vbkd.
data:
wa_vbak type ty_vbak.
data:
st_tvariant like disvariant,
st_variant like disvariant.
constants:
co_as4local_a like dd03l-as4local " Active version
value 'A',
co_objectclas_verkbeleg like cdhdr-objectclas
value 'VERKBELEG',
co_posnr_initial like vbkd-posnr " Initial item number
value is initial,
co_posnr_initial_2 like vbap-posnr " Initial item number
value is initial,
co_save_u type c " User display variant
value 'U', " saving allowed.
co_trvog_0 like vbak-trvog " Sales order
value '0'.
data:
va_exit type c, " ALV display
va_tabix like sy-tabix.
selection-screen: begin of block b1 with frame title text-001.
select-options:
s_vkorg for vbak-vkorg OBLIGATORY, " Sales organisation
s_vkbur for vbak-vkbur, " Sales office
s_vtweg for vbak-vtweg, " Distribution channel
s_vbeln for vbak-vbeln, " Sales order number
s_usrnme for cdhdr-username, " Changed by
s_udate for cdhdr-udate. " Changed on
selection-screen: end of block b1,
begin of block b2 with frame title text-002.
parameters:
p_varint like disvariant-variant. " Display variant.
selection-screen: end of block b2.
Initialization
initialization.
Load display variant.
if not p_varint is initial.
move st_variant to st_tvariant.
move p_varint to st_tvariant-variant.
call function 'REUSE_ALV_VARIANT_EXISTENCE'
exporting
i_save = co_save_u
changing
cs_variant = st_tvariant.
st_variant = st_tvariant.
else.
clear st_variant.
st_variant-report = sy-repid.
endif.
at selection-screen on value-request for p_varint.
Provide display variant list for this program.
call function 'REUSE_ALV_VARIANT_F4'
exporting
is_variant = st_variant
i_save = co_save_u
importing
e_exit = va_exit
es_variant = st_tvariant
exceptions
not_found = 2.
if sy-subrc eq 2.
message id sy-msgid type 'S'
number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
else.
if va_exit eq space.
st_variant = st_tvariant.
p_varint = st_tvariant-variant.
endif.
endif.
At selection screen
at selection-screen.
Load display variant.
if not p_varint is initial.
move st_variant to st_tvariant.
move p_varint to st_tvariant-variant.
call function 'REUSE_ALV_VARIANT_EXISTENCE'
exporting
i_save = co_save_u
changing
cs_variant = st_tvariant.
st_variant = st_tvariant.
else.
clear st_variant.
st_variant-report = sy-repid.
endif.
Start of selection
Extract order details from VBAK
select vbeln erdat auart faksk netwr waerk vkorg vtweg vkbur fkara
kunnr xblnr
from vbak
into table it_vbak
where vkorg in s_vkorg
and vkbur in s_vkbur
and vbeln in s_vbeln.
if sy-subrc ne 0.
No data found for selection
message s001(zgen).
exit.
endif.
loop at it_vbak into wa_vbak.
va_tabix = sy-tabix.
wa_vbak-objectid = wa_vbak-vbeln.
modify it_vbak from wa_vbak
index va_tabix
transporting objectid.
endloop.
if sy-subrc ne 0.
No data found for selection
message s001(zgen).
exit.
endif.
loop at it_vbak into wa_vbak.
va_tabix = sy-tabix.
wa_vbak-objectid = wa_vbak-vbeln.
modify it_vbak from wa_vbak
index va_tabix
transporting objectid.
endloop.
Extract Change data
select objectclas objectid changenr username udate utime tcode
from cdhdr
into table it_cdhdr
for all entries in it_vbak
where objectclas eq co_objectclas_verkbeleg
and objectid eq it_vbak-objectid
and username in s_usrnme
and udate in s_udate.
if sy-subrc eq 0.
select objectclas objectid changenr tabname tabkey fname chngind
value_new value_old
from cdpos
into table it_cdpos
for all entries in it_cdhdr
where fname NE 'CMPRE_FLT'
and objectclas eq it_cdhdr-objectclas
and objectid eq it_cdhdr-objectid
and changenr eq it_cdhdr-changenr.
endif.
Extract customer details from KNA1
select kunnr name1
from kna1
into table it_kna1
for all entries in it_vbak
where kunnr eq it_vbak-kunnr.
---- Changes are made here -
Extract Material details from vbap
select matnr arktx
from vbap
into table it_vbap
for all entries in it_vbak
where
vbeln eq it_vbak-vbeln
and posnr eq co_posnr_initial.
-----------------End of Change ----------------------*
Extract Contract No from vbkd.
select vbeln posnr fbuda
from vbkd
into table it_vbkd
for all entries in it_vbak
where vbeln eq it_vbak-vbeln
and posnr eq co_posnr_initial.
perform merge_data tables it_cdhdr
it_cdpos
it_kna1
it_user_addr
it_merged
it_vbak
it_vbap
it_vbkd.
if it_merged[] is initial.
message s001(zgen).
exit.
endif.
Release memory no longer required.
free: it_cdhdr,
it_cdpos,
it_kna1,
it_user_addr,
it_vbak,
it_vbap,
it_vbkd.
Build field catalog for call to report function
perform build_field_catalog tables it_fieldcat.
Output report.
perform output_report tables it_fieldcat
it_merged.
*& Form merge_data
text
form merge_data tables pa_it_cdhdr type ty_it_cdhdr
pa_it_cdpos type ty_it_cdpos
pa_it_kna1 type ty_it_kna1
pa_it_user_addr type ty_it_user_addr
pa_it_merged type ty_it_merged
pa_it_vbak type ty_it_vbak
pa_it_vbap type ty_it_vbap
pa_it_vbkd type ty_it_vbkd.
Local internal tables
data:
lit_dd03l type ty_it_dd03l,
lit_dd04t type ty_it_dd04t.
Local work areas
data:
lwa_cdhdr type ty_cdhdr,
lwa_cdpos type ty_cdpos,
lwa_dd03l type ty_dd03l,
lwa_dd04t type ty_dd04t,
lwa_kna1 type ty_kna1,
lwa_user_addr type ty_user_addr,
lwa_merged type ty_merged,
lwa_vbak type ty_vbak,
lwa_vbap type ty_vbap,
lwa_vbkd type ty_vbkd.
Local variables
data:
lva_dd03l_tabix like sy-tabix,
lva_dd04t_tabix like sy-tabix.
Sort Data
sort pa_it_cdhdr by objectid changenr.
sort pa_it_cdpos by objectid changenr tabname tabkey fname.
sort pa_it_kna1 by kunnr.
sort pa_it_user_addr by bname.
sort pa_it_vbak by vbeln.
sort pa_it_vbkd by vbeln.
loop at pa_it_vbak into lwa_vbak.
clear lwa_merged.
Assign sales order fields to reporting work area
lwa_merged-vbeln = lwa_vbak-vbeln.
lwa_merged-erdat = lwa_vbak-erdat.
lwa_merged-auart = lwa_vbak-auart.
lwa_merged-faksk = lwa_vbak-faksk.
lwa_merged-netwr = lwa_vbak-netwr.
lwa_merged-waerk = lwa_vbak-waerk.
lwa_merged-vkorg = lwa_vbak-vkorg.
lwa_merged-vtweg = lwa_vbak-vtweg.
lwa_merged-vkbur = lwa_vbak-vkbur.
lwa_merged-fkara = lwa_vbak-fkara.
lwa_merged-kunnr = lwa_vbak-kunnr.
lwa_merged-bname = 1wa_user_addr-bname.
lwa_merged-xblnr = lwa_vbak-xblnr.
Assgin Material to reporting work area
lwa_merged-matnr = lwa_vbap-vbeln.
Get name of sold-to party from PA_IT_KNA1
clear lwa_kna1.
read table pa_it_kna1 into lwa_kna1
with key kunnr = lwa_vbak-kunnr
binary search.
lwa_merged-name1 = lwa_kna1-name1.
Get name from PA_it_user_addr
clear lwa_user_addr.
read table pa_it_user_addr into lwa_user_addr
with key = lwa_user_addr-bname
binary search.
lwa_merged-username = lwa_user_addr-name_textc.
Get business data from PA_IT_VBKD.
clear lwa_vbkd.
read table pa_it_vbkd into lwa_vbkd
with key vbeln = lwa_vbak-vbeln
binary search.
lwa_merged-fbuda = lwa_vbkd-fbuda.
Get Material Data
clear lwa_vbap.
read table pa_it_vbap into lwa_vbap
with key matnr = lwa_vbap-matnr
with key vbeln = lwa_vbak-vbeln
binary search.
lwa_merged-arktx = lwa_vbap-arktx.
Get internal note text for sales order
perform read_text using '0002'
'1'
lwa_merged-vbeln
'VBBK'
lwa_merged-intnote.
Get header note 1 text for sales order
perform read_text using 'Z002'
'1'
lwa_merged-vbeln
'VBBK'
lwa_merged-hdrnote.
Determine if change documents exist for sales order.
clear lwa_cdhdr.
read table pa_it_cdhdr into lwa_cdhdr
with key objectid = lwa_vbak-objectid.
if sy-subrc ne 0.
continue.
endif.
loop at pa_it_cdhdr into lwa_cdhdr
from sy-tabix.
lwa_merged-username = lwa_cdhdr-username.
lwa_merged-udate = lwa_cdhdr-udate.
lwa_merged-utime = lwa_cdhdr-utime.
lwa_merged-tcode = lwa_cdhdr-tcode.
clear lwa_cdpos.
read table pa_it_cdpos into lwa_cdpos
with key objectid = lwa_cdhdr-objectid
changenr = lwa_cdhdr-changenr
binary search.
loop at pa_it_cdpos into lwa_cdpos
from sy-tabix.
lwa_merged-tabname = lwa_cdpos-tabname.
lwa_merged-tabkey = lwa_cdpos-tabkey.
lwa_merged-fname = lwa_cdpos-fname.
lwa_merged-chngind = lwa_cdpos-chngind.
lwa_merged-value_new = lwa_cdpos-value_new.
lwa_merged-value_old = lwa_cdpos-value_old.
Get description for field - determine date element
clear lwa_dd03l.
read table lit_dd03l into lwa_dd03l
with key tabname = lwa_cdpos-tabname
fieldname = lwa_cdpos-fname
binary search.
lva_dd03l_tabix = sy-tabix.
if sy-subrc ne 0.
select single tabname fieldname as4local as4vers rollname
from dd03l
into lwa_dd03l
where tabname eq lwa_cdpos-tabname
and fieldname eq lwa_cdpos-fname
and as4local eq co_as4local_a.
if sy-subrc eq 0.
insert lwa_dd03l into lit_dd03l
index lva_dd03l_tabix.
endif.
endif.
If data element was found, get description
if not lwa_dd03l is initial.
clear lwa_dd04t.
read table lit_dd04t into lwa_dd04t
with key rollname = lwa_dd03l-rollname
ddlanguage = sy-langu
binary search.
lva_dd04t_tabix = sy-tabix.
if sy-subrc ne 0.
select single rollname ddlanguage as4local as4vers scrtext_l
from dd04t
into lwa_dd04t
where rollname eq lwa_dd03l-rollname
and ddlanguage eq sy-langu.
if sy-subrc eq 0.
insert lwa_dd04t into lit_dd04t
index lva_dd04t_tabix.
else.
lwa_dd04t-scrtext_l = 'Description for field not found'.
endif.
endif.
endif.
lwa_merged-scrtext_l = lwa_dd04t-scrtext_l.
append lwa_merged to pa_it_merged.
at end of changenr.
Only process field changes for this change document.
exit.
endat.
endloop.
at end of objectid.
Initialise work area so we know change document for order has
been processed.
clear lwa_merged.
Only process change documents for this sales order.
exit.
endat.
endloop.
endloop.
endform. " merge_data
*& Form build_field_catalog
text
form build_field_catalog tables pa_it_fieldcat type slis_t_fieldcat_alv.
data:
Local variable
lva_col_pos type slis_fieldcat_alv-col_pos,
Local structure
st_fieldcat type slis_fieldcat_alv.
lva_col_pos = 0.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'VBELN'.
st_fieldcat-ref_tabname = 'VBAK'.
st_fieldcat-ref_fieldname = 'VBELN'.
st_fieldcat-row_pos = '1'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'VKBUR'.
st_fieldcat-ref_tabname = 'VBAK'.
st_fieldcat-ref_fieldname = 'VKBUR'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '6'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'VKORG'.
st_fieldcat-ref_tabname = 'VBAK'.
st_fieldcat-ref_fieldname = 'VKORG'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '6'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'KUNNR'.
st_fieldcat-ref_tabname = 'VBAK'.
st_fieldcat-ref_fieldname = 'KUNNR'.
st_fieldcat-row_pos = '1'.
st_fieldcat-col_pos = lva_col_pos.
st_fieldcat-outputlen = '6'.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'NAME1'.
st_fieldcat-ref_tabname = 'KNA1'.
st_fieldcat-ref_fieldname = 'NAME1'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '15'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'MATNR'.
st_fieldcat-ref_tabname = 'VBAP'.
st_fieldcat-ref_fieldname = 'MATNR'.
st_fieldcat-row_pos = '1'.
st_fieldcat-col_pos = lva_col_pos.
st_fieldcat-outputlen = '6'.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'SCRTEXT_L'.
st_fieldcat-ref_tabname = 'DD04T'.
st_fieldcat-ref_fieldname = 'SCRTEXT_L'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '20'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'UDATE'.
st_fieldcat-ref_tabname = 'CDHDR'.
st_fieldcat-ref_fieldname = 'UDATE'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '10'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'USERNAME'.
st_fieldcat-ref_tabname = 'CDHDR'.
st_fieldcat-ref_fieldname = 'USERNAME'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '6'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'FNAME'.
st_fieldcat-ref_tabname = 'CDPOS'.
st_fieldcat-ref_fieldname = 'FNAME'.
st_fieldcat-row_pos = '4'.
st_fieldcat-outputlen = '8'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'CHNGIND'.
st_fieldcat-ref_tabname = 'CDPOS'.
st_fieldcat-ref_fieldname = 'CHNGIND'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '8'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'WAERK'.
st_fieldcat-ref_tabname = 'VBAK'.
st_fieldcat-ref_fieldname = 'WAERK'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '5'.
st_fieldcat-col_pos = lva_col_pos..
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'VALUE_NEW'.
st_fieldcat-ref_tabname = 'CDPOS'.
st_fieldcat-ref_fieldname = 'VALUE_NEW'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '20'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'VALUE_OLD'.
st_fieldcat-ref_tabname = 'CDPOS'.
st_fieldcat-ref_fieldname = 'VALUE_OLD'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '20'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
endform. " build_field_catalog
*& Form output_report
text
form output_report tables pa_it_fieldcat type slis_t_fieldcat_alv
pa_it_merged type ty_it_merged.
Local variables
data:
lva_formname type slis_formname,
lva_repid like sy-repid.
lva_repid = sy-repid.
lva_formname = 'ALV_USER_COMMAND'.
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
i_callback_program = lva_repid
i_callback_user_command = lva_formname
i_save = 'A'
is_variant = st_variant
it_fieldcat = pa_it_fieldcat[]
tables
t_outtab = pa_it_merged
exceptions
program_error = 1
others = 2.
endform. " output_report
*& Form alv_user_command
text
form alv_user_command using pa_ucomm like sy-ucomm
pa_selfield type slis_selfield.
Local work areas
data:
lwa_merged type ty_merged.
clear lwa_merged.
read table it_merged into lwa_merged
index pa_selfield-tabindex.
case pa_selfield-fieldname.
when 'VBELN'.
Contract Number
set parameter id 'AUN' field lwa_merged-vbeln.
call transaction 'VA03' and skip first screen.
S_BCE_68001393
when 'USERNAME'.
Username
set parameter id 'username' field lwa_merged-username.
call transaction 'S_BCE_68001393' and skip first screen.
when 'KUNNR'.
Customer number
set parameter id 'KUN' field lwa_merged-kunnr.
set parameter id 'VKO' field space.
set parameter id 'VTW' field space.
set parameter id 'SPA' field space.
call transaction 'XD03' and skip first screen.
endcase.
endform. " alv_user_command
*& Form read_text
text
form read_text using pa_id
pa_inline_count
pa_name
pa_object
pa_text.
Local internal tables
data:
lit_inlines type ty_it_lines,
lit_lines type ty_it_lines.
Local work areas
data:
lwa_lines type ty_lines.
Local variables
data:
lva_tdname like thead-tdname.
refresh: lit_inlines,
lit_lines.
lva_tdname = pa_name.
call function 'READ_TEXT_INLINE'
exporting
id = pa_id
inline_count = pa_inline_count
language = sy-langu
name = lva_tdname
object = pa_object
tables
inlines = lit_inlines
lines = lit_lines
exceptions
id = 1
language = 2
name = 3
not_found = 4
object = 5
reference_check = 6
others = 7.
loop at lit_lines into lwa_lines.
concatenate pa_text
lwa_lines-tdline
into pa_text separated by space.
endloop.
endform. " read_text ENDLOOP.Hi
As per your code here:
"-------------- Changes are made here ----------------
*Extract Material details from vbap
select matnr arktx
from vbap
into table it_vbap
for all entries in it_vbak
where
vbeln eq it_vbak-vbeln
and posnr eq co_posnr_initial. " Here the condition specifies you want to select sales order items where there is no item number, which i beleive shouldnt be the case
" -----------------End of Change ----------------------
Try as below by commenting the Item Number is INITIAL condition:
select matnr arktx
from vbap
into table it_vbap
for all entries in it_vbak
where
vbeln eq it_vbak-vbeln.
"and posnr eq co_posnr_initial.
Regards
Eswar
Maybe you are looking for
-
Hello, community! I hope that someone is able to assist me. So, base of the issue: I recently got a new computer [I went from a Mac to a PC - loved my mac, but it was falling apart after a good eight years and a new one is way too expensive] and I do
-
How to use Airport Extreme as a wireless hub
I just switched ISPs and decided to move the location of the modem. Bought a new Airport Extreme and set it up next to the modem. I get good WiFi through out the house (30-50Mbps). However, I have a location (in the entertainment center on opposit
-
Hi, Can we develop a plugin which can support Reader 8,9 and 10 as well as Acrobat 8,9 and 10?? I have developed a plugin using acrobat sdk 8, which works on both Acrobat 8 and 9. I have seen acrobat sdk 10, it has changes in the signature of the API
-
Setting the Line size at runtime
Hi All, I am printing a classical report. Usually we set the Page width statically ie by using Line-Size. But I need a way to change this value at runtime. Is there a way out to this problem? Thanks & Regards, Abhijeet.
-
Error: typecheck OffendingCommand: setglobal
I am using Indesign CS3 in Windows 7. I am trying to print a brochure to a .pdf and each time I do I get this PostScript message. Any suggestions?