Getting objectID
experts,
In E-recruitment when I select one requisition and move to other tab. here I need to retrieve the ojectid(ref no) of the selected requisition in the current page.
how can I achieve this using interface. help me in this regard.
thanks
Vijay
solved myself.
Similar Messages
-
Get object target id in a workflow
When using the PowerShell activity (NOT the PowerShell Workflow Activity) in a workflow, how can I get an object ID?
I.e. with PowerShellWorkflowActivity you can use $fimwf.targetID but how can I do that in a normal Powershell activity?
Thanks,
JDHi JD,
What kind of Powershell Activity do you use?
The way to get ObjectID (of the target) is coded in the PowerShell Workflow Activity. So, if it's not present in your activity, I'm afraid that you have to find another way...
Regards,
Sylvain -
Object Id Guid While creating G service Order
Hi ,
Is there any FM by which I can get Objectid(GUID) and Service Employee group
before saving of order, i.e while creation and after entering service employee group
thanks
PankajHi ,
thanks for the input, but i need the service employee group and object id after entering Employee responsible and service employee group no i.e when the following function module triggers (ZG_SP_CRM_ORGMAN_ORGOBJ_FIND_3 -- configure for our req.) this function modules triggers when I press enter after entering sold-to-party.
thanks
pankaj -
Field not set: ParentEPSObjectId when creating Project.
Hi everyone,
I'm developing .net application and getting data from primavera by using p6 web service. At the moment I stuck on project creation. I'm using following code to create a new project:
Public Function CreateOneProject(pProjectName As String, pProjectId As String, pParentEpsObjectId As Integer, pPlannedStart As Date, pPlannedFinish As Date, pParentOBSObjectId As Integer) As Integer
Dim vNewProject As Project()
vNewProject = New Project(0) {}
Dim vProject As New Project()
vProject.Name = pProjectName
vProject.Id = pProjectId
vProject.ParentEPSObjectId = pParentEpsObjectId
vProject.StartDate = pPlannedStart
vProject.FinishDate = pPlannedFinish
vProject.OBSObjectId = pParentOBSObjectId
vNewProject(0) = vProject
Dim retVal As Integer() = gProjectService.CreateProjects(vNewProject)
Return retVal(0)
End Function
And getting error message: Field not set:ParentEPSObjectId when creating Project.
EPS Object ID i'm selecting from lookup. In this lookup datasource I have following fields from ReadEPS: ObjectId, Name, Id, ParentObjectID.
As I understood, I should to get ObjectID of selected EPS and to set as parameter in CreateOneProject function. But it's not working.
Could someone help me?
Best regards,
DmitrijI found what was the problem.
Did not specify following field: ParentEPSObjectIdSpecified = true. With this field I can save. -
Toplink issues select distinct type query before fetch
When we have type classifiers identified by value, Toplink issues a 'SELECT DISTINCT TYPE' on the parent object and then queries the child records for that type, is there way to avoid the select distinct
type query from Toplink in queries, this is slowing down the query performance. thanksMore info
This is the Report Query:
Session session = PersistenceFactory.newSession();
ExpressionBuilder eb = new ExpressionBuilder();
ReportQuery query = new ReportQuery( eb );
query.setReferenceClass( FXSingleLegDealC.class );
query.useCollectionClass( ArrayList.class );
query.setSelectionCriteria( eb.get( "objectID" ).equal( 249994 ) );
query.addAttribute( "objectID", eb.get( "objectID" ) );
query.addAttribute( "parentDealFXDealLegCurrency1Amount", eb.get( "dealFXSingleLegParent" ).get( "fxDealLeg" ).get( "currency1Amount" ) );
query.addAttribute( "parentDealFXDealLegCurrency1Amount", eb.get( "dealFXSingleLegParent" ).get( "fxDealLeg" ).get( "currency2Amount" ) );
query.addAttribute( "parentDealFXDealLegCurrency1Amount", eb.get( "dealFXSingleLegParent" ).get( "fxDealLeg" ).get( "currency1" ).get( NamedEntity.ShortName) );
query.addAttribute( "parentDealFXDealLegCurrency1Amount", eb.get( "dealFXSingleLegParent" ).get( "counterpartyA" ).get( NamedEntity.ShortName) );
ArrayList result = ( ArrayList ) session.executeQuery( query );
This is the SQL Generated:
SELECT t0.id, t1.ccy1Amt, t1.ccy2Amt, t2.shortName, t3.shortName FROM IdcCpty t3, IdcInstr t2, IdcDeal t1, IdcDeal t0
WHERE (((t0.id = ?) AND (t0.type = ?)) AND ((((t1.id = t0.parentId) AND (t1.type = ?)) AND ((t2.id = t1.ccy1Id) AND (t2.type = ?))) AND ((t3.id = t1.cptyAId) AND (t3.type = ?))))
bind => [249994, IdcFXSLegDealC, IdcFXSLegDealC, IdcCrncC, IdcLglEntC]
Not sure why we need to query for type on t2 and t3 after we have made a join by id (t2.id = t1.ccy1Id,t3.id = t1.cptyAId), this is really breaking our performance, we do not want to add an index on
the type column
can someone please respond!? -
Any known issues with ObjectLevelReadQuery.CheckCacheByPrimaryKey
In Toplink 2.5, when we set this property in a query, Toplink would go to DB even if the object was in the cache, does anyone if this issue still exists or any other issue(s)
with the above setting? thanksReproducable case:
I am querying organizatoin by primarykey (ObjectID) when I query the same object again I see that there are two select statements:
Testcase:
public void testPK()
try
Session session = PersistenceFactory.newSession();
System.out.println( "====================================================" );
ExpressionBuilder eb = new ExpressionBuilder();
Expression expr = eb.get( "objectID" ).equal( 6506 );
ReadAllQuery raq = new ReadAllQuery();
raq.setReferenceClass( OrganizationC.class );
raq.setSelectionCriteria( expr );
raq.setCacheUsage( ObjectLevelReadQuery.CheckCacheThenDatabase );
Vector entities = ( Vector ) session.executeQuery( raq );
System.out.println( "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" );
ExpressionBuilder eb1 = new ExpressionBuilder();
Expression expr1 = eb1.get( "objectID" ).equal( 6506 );
ReadAllQuery raq1 = new ReadAllQuery();
raq1.setReferenceClass( OrganizationC.class );
raq1.setSelectionCriteria( expr1 );
raq1.setCacheUsage( ObjectLevelReadQuery.CheckCacheThenDatabase );
Vector entities1 = ( Vector ) session.executeQuery( raq1 );
catch ( PersistenceException e )
fail( "failed", e );
Sql statements issued:
=============
====================================================
2008-09-23 12:03:03,252 INFO Main Thread [@MAIN.MAIN] Persistence - TOPLink: [TopLink Fine]:
2008-09-23 12:03:03,252 INFO Main Thread [@MAIN.MAIN] Persistence - TOPLink: 2008.09.23 12:03:03.252--ServerSession(3816588)--Connection(4324455)--Thread(Thread[Main Thread,5,main])--
2008-09-23 12:03:03,252 INFO Main Thread [@MAIN.MAIN] Persistence - TOPLink: SELECT id, isECNOrg, guid, isExtrnlPrvdr, addressLine3, MAXLOGINFAILEDEXMPT, connMode, pwordExpExmpt, CPTYLICAGRMTSTATUS, isPrimeBrokerOrg, LICAGRMTSTATUS, requestPriceOnHol, orgGrp, requestPriceOnHolType, postalCode, SHOWLMTASMATCHPRC, stpConfiguration, SHOWLMTASMATCHPRCBRKR, DLYTRDMAILENBLED, addressLine1, STPNETTINGENBLD, shortName, addressLine4, longName, idx, readingsName, orgSetId, description, isBrokerOrg, version, addressLine2, createdDate, modifiedDate, stpManualTrdEnbld, status, region, statusLastModified, country, displayKey, PRCPRVORGID, BROKERORGID, DEFAULTCPTYLGLAGRMT, DEFAULTLGLAGRMT, feeScheduleId, prcRegenParamId, ruleSetId, workflowStateMapId, namespaceId, lastModifiedById FROM IdcOrg WHERE (id = ?)
bind => [6506]
2008-09-23 12:03:03,252 INFO Main Thread @MAIN.MAIN] Persistence - TOPLink:
2008-09-23 12:03:03,252 INFO Main Thread [@MAIN.MAIN] Persistence - TOPLink: [TopLink Fine]:
2008-09-23 12:03:03,252 INFO Main Thread [@MAIN.MAIN] Persistence - TOPLink: 2008.09.23 12:03:03.252--ServerSession(3816588)--Connection(3614800)--Thread(Thread[Main Thread,5,main])--
2008-09-23 12:03:03,252 INFO Main Thread [@MAIN.MAIN] Persistence - TOPLink: SELECT id, type, version, createdDate, description, guid, modifiedDate, longName, status, shortName, statusLastModified, readingsName, displayKey, workflowStateMapId, namespaceGroupId, namespaceId, lastModifiedById FROM IdcNamespace WHERE (id = ?)
bind => [6006]
2008-09-23 12:03:03,252 INFO Main Thread [[email protected]] Persistence - TOPLink:
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
2008-09-23 12:03:03,252 INFO Main Thread [@MAIN.MAIN] Persistence - TOPLink: [TopLink Fine]:
2008-09-23 12:03:03,268 INFO Main Thread [@MAIN.MAIN] Persistence - TOPLink: 2008.09.23 12:03:03.252--ServerSession(3816588)--Connection(4284361)--Thread(Thread[Main Thread,5,main])--
2008-09-23 12:03:03,268 INFO Main Thread @MAIN.MAIN] Persistence - TOPLink: SELECT id, isECNOrg, guid, isExtrnlPrvdr, addressLine3, MAXLOGINFAILEDEXMPT, connMode, pwordExpExmpt, CPTYLICAGRMTSTATUS, isPrimeBrokerOrg, LICAGRMTSTATUS, requestPriceOnHol, orgGrp, requestPriceOnHolType, postalCode, SHOWLMTASMATCHPRC, stpConfiguration, SHOWLMTASMATCHPRCBRKR, DLYTRDMAILENBLED, addressLine1, STPNETTINGENBLD, shortName, addressLine4, longName, idx, readingsName, orgSetId, description, isBrokerOrg, version, addressLine2, createdDate, modifiedDate, stpManualTrdEnbld, status, region, statusLastModified, country, displayKey, PRCPRVORGID, BROKERORGID, DEFAULTCPTYLGLAGRMT, DEFAULTLGLAGRMT, feeScheduleId, prcRegenParamId, ruleSetId, workflowStateMapId, namespaceId, lastModifiedById FROM IdcOrg WHERE (id = ?)
bind => [6506]
2008-09-23 12:03:03,268 INFO Main Thread [@MAIN.MAIN] Persistence - TOPLink:
Edited by: newToplinkUser on Sep 23, 2008 12:12 PM
Edited by: newToplinkUser on Sep 23, 2008 2:47 PM -
Core Data: Get Managed Object by unique part of the objectID
In my Core Data application, I need to get the pointers to different managed objects whose CoreData objectIDs end with the number I provide. e.g.:
Get the Person object whose objectID ends with unique number 317. The whole ID is:
<x-coredata://A3EDF6C1-229D-4658-A04E-598ADF1C749A/Person/p317>
or I need to get Department object, which ends with 5; again full ID is:
<x-coredata://A3EDF6C1-229D-4658-A04E-598ADF1C749A/Department/p5>
These numbers are actually primary keys in the SQLite database's tables and I can see them if I open the database directly with sqlite3, and I can of course select the records using SQL query;
*but I can not figure out how to get these objects using CoreData. I guess I should create the NSPredicate for the fetch request; but I don't know how to write the predicate which will give me the exact object based on the unique part of the objectID*
As I understand, objectIDs are not object's "normal" attributes.
Please help. Thanks in advance.etresoft wrote:
DavidMan wrote:
*but I can not figure out how to get these objects using CoreData. I guess I should create the NSPredicate for the fetch request; but I don't know how to write the predicate which will give me the exact object based on the unique part of the objectID*
I think you are supposed to consider the entire ID to be unique. You can retrieve the associated object using "objectWithID:" from NSManagedObjectContext.
The problem is that I am parsing the text from another application and I have only the "unique part" at hand and not the whole objectID. So, I need to cope with that.
What I see is that the IDs of every entity start with the same text, e.g. here are the IDs of two different entities:
<x-coredata://A3EDF6C1-229D-4658-A04E-598ADF1C749A/Person/p317>
<x-coredata://A3EDF6C1-229D-4658-A04E-598ADF1C749A/Department/p5>
As you see, the difference is only in the end, after the entity names "Paper" and "Department". But this is my case and I am not completely sure that this will hold true for EVERY future installation on any system for every entity.
*Question: will the part like <x-coredata://A3EDF6C1-229D-4658-A04E-598ADF1C749A be constant for the particular installation, for every entity/object?*
If YES, then I will:
- after getting any/first object, extract the non-unique part, i.e. <x-coredata...749A which is the same for every object in this particular installation on this particular computer
- get the unique part, i.e. /Person/p317, /Person/p23, /Department/p5 etc.
- synthesize the "real ID" by appending these two strings
- ask managedObjectContext to return the object with this ID
- continue with the acquired object
How does it sound? Will this work on other computers?
P.S. FYI: the coredata of this program has only one store i.e. all the data are stored in single sqlite file. -
Getting a Created User's ObjectID
Hello All:
Im using the local Plumtree API on the portal server to create a user, and I want to get the objectid of that created user. Is there an elegant way to do this without a query? If not, what would the query look like to retrieve the new user's objectid?
Thanks in advance.
-HarrisonHi Harrison,
The user object implements more than one interface, you need to cast it to an IPTServerContext in order to store it and get the ObjectID. You'd so something like this:
IPTUser newUser = (IPTUser) userManager.Create(nNewUsersFolderID);
newUser.SetName("Akash Jain");
newUser.SetDescription("Aki's Account");
IPTServerContext sc = (IPTServerContext) newUser.GetInterfaces("IPTServerContext");
sc.Store();
int objectID = sc.GetObjectID();
At the end of this you have the objectID.
-Aki -
Getting User Details using objectid
Hi,
First i am querying the projects using ALUI IDK
===========
IProjectManager projectManager = GetProjectManager(Request, Response);
IProjectFilter projectFilter = projectManager.CreateProjectFilter();
projectFilter.NameSearchText = searchText;
Plumtree.Remote.PRC.Collaboration.Project.IProject[] projects = projectManager.QueryProjects(projectFilter);
=================
then i am retreiving User IDsadded as Project Leader
========================
IRole role = null;
RoleTypes roleType = RoleTypes.Leader;
role = project.GetRole(roleType);
int[] GroupID = role.GetMemberIDs(MemberQueryTypes.AllGroups);
Display Group ID
=========================
Now the issue is i am not able to figure out how to get the users detail ie authusername, login name etc present in the groups that are retrieved.
Regards,
Ankit
Edited by: electrazy on Jul 18, 2011 11:39 AM
Edited by: electrazy on Jul 20, 2011 2:22 AMHello electrazy,
This is not possible from within the IDK. The best you can get are the Extended Data properties that are associated with the user object in the Global Property Map. If you want to get user information like the authentication name and the login name, you'll have to use the Portal Server API or directly query the database.
-Mike Headley, WCI Developer Support -
Can any one help me to get Material no in the report
Hi Gurus
Can anyone help me to alter and get material number and description from VBAP , This is basically document price change report for users.
The code is below
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 -
select matnr arktx
from vbap
into table it_vbap
for all entries in it_vbak
where
vbeln eq it_vbak-vbeln.
-----------------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 of name from vbap
clear lwa_vbap.
read table pa_it_vbap into lwa_vbap
with key matnr = lwa_vbap-matnr
binary search.
lwa_merged-arktx = lwa_vbap-arktx.
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 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 = 'arktx'.
st_fieldcat-ref_tabname = 'VBAP'.
st_fieldcat-ref_fieldname = 'arktx'.
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 = '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 = 'VALUE_OLD'.
st_fieldcat-ref_tabname = 'CDPOS'.
st_fieldcat-ref_fieldname = 'VALUE_OLD'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '6'.
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 Eswar
According to your instruction I did the modification to add the material no and description but I am unable to get atleast material no seeing below my coding please do some debugging and send to me
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 Number
makt, " Material Description
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,
vbeln like vbap-vbeln, " Contract number
posnr like vbap-posnr, " Contract item
matnr like vbap-matnr, " Material
abgru like vbap-abgru, " Reason for rejection
werks like vbap-werks, " Plant
arktx like vbap-arktx, " Product description
maktx like makt-maktx, " Production Description
end of ty_vbap,
ty_it_vbap type ty_vbap occurs 0,
begin of ty_mara,
matnr like mara-matnr, " Material
extwg like mara-extwg, " External material group
mstav like mara-mstav, " Blocking reason
mstdv like mara-mstdv, " Blocking reason valid from
end of ty_mara,
ty_it_mara type ty_mara occurs 0,
begin of ty_marc,
matnr like marc-matnr, " Material
werks like marc-werks, " Plant
mmsta like marc-mmsta, " Blocking reason
mmstd like marc-mmstd, " Blocking reason valid from
end of ty_marc,
ty_it_marc type ty_marc 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,
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
matnr like vbap-matnr,
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_mara type ty_it_mara,
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_vkorg for vbak-vkorg , " 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_kunnr for vbak-kunnr, " sold to party
"s_matnr for vbap-matnr, " Material No
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 kunnr in s_kunnr
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.
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 general material details from MARA
select matnr
from vbap
into table it_vbap
for all entries in it_vbap
where vbeln eq it_vbap-vbeln
and matnr eq it_vbap-matnr.
select maktx from makt
into table it_vbap
for all entries in it_vbak
where matnr eq it_vbap-matnr.
select MAKTX from MAKT
into table it_vbap "<<<<<<if you have maktx in the structure
for all entries in it_vbap
where
matnr eq it_vbap-matnr.
select a~matnr
from vbap as a
inner join makt as b
on b~matnr = a~matnr
into table it_vbap
for all entries in it_vbak
where
a~vbeln eq it_vbak-vbeln.
"and b~spras eq sy-langu.
select a~matnr
from vbap as a
inner join makt as b
on bmatnr = amatnr
into table it_vbap
for all entries in it_vbak
where
a~vbeln eq it_vbak-vbeln.
"and b~spras eq sy-langu.
Extract general material details from MARA
select matnr extwg mstav mstdv
from mara
into table it_mara
for all entries in it_vbap
where matnr eq it_vbap-matnr.
-----------------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_vbap by matnr.
sort pa_it_user_addr by bname.
sort pa_it_vbak by vbeln.
sort pa_it_vbkd by vbeln.
Change here
loop at pa_it_vbap into lwa_vbap.
read table pa_it_vbak into lwa_vbak with key vbeln = lwa_vbap-vbeln.
check sy-subrc eq 0.
move-corresponding lwa_vbak to lwa_merged.
End of Changes here
endloop.
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-vbeln = lwa_vbap-vbeln.
lwa_merged-bname = 1wa_user_addr-bname.
lwa_merged-xblnr = lwa_vbak-xblnr.
Assgin Material to reporting work area
lwa_merged-matnr = lwa_vbap-matnr.
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 of name from vbap
clear lwa_vbap.
read table pa_it_vbap into lwa_vbap
with key vbeln = lwa_vbap-vbeln
binary search.
lwa_merged-arktx = lwa_vbap-arktx.
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 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.
end of loop
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 = 'MATNR'.
st_fieldcat-ref_tabname = 'MARA'.
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 = '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 = 'VALUE_OLD'.
st_fieldcat-ref_tabname = 'CDPOS'.
st_fieldcat-ref_fieldname = 'VALUE_OLD'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '6'.
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. -
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 -
Getting blank screen when i try to open workspace first time
Hi All,
I have installed hyperion 11.1.2.2 version with Oracle 11.2.0.1 database. Installation and configuration completed successfully.
Operating System: Windows Server 2008 64 bit
When i try to open workspace, it is showing blank page in the IE 10
error msg:
<May 7, 2013 4:29:30 AM MST> <Notice> <WebLogicServer> <BEA-000365> <Server stat
e changed to RUNNING>
<May 7, 2013 4:29:30 AM MST> <Notice> <WebLogicServer> <BEA-000360> <Server star
ted in RUNNING mode>
*<May 7, 2013 4:29:30 AM MST> <Warning> <Log Management> <BEA-170011> <The LogBro*
adcaster on this server failed to broadcast log messages to the admin server. Th
e Admin server may not be running. Message broadcasts to the admin server will b
e disabled.>
<May 7, 2013 4:37:20 AM MST> <Warning> <Socket> <BEA-000449> <Closing socket as
no data read from it on fe80:0:0:0:21c:42ff:fe6e:b382:61,983 during the configur
ed idle timeout of 5 secs>
<May 7, 2013 4:38:08 AM MST> <Notice> <Security> <BEA-090171> <Loading the ident
ity certificate and private key stored under the alias DemoIdentity from the jks
keystore file C:\Oracle\MIDDLE~1\WLSERV~1.3\server\lib\DemoIdentity.jks.>
<May 7, 2013 4:38:08 AM MST> <Notice> <Security> <BEA-090169> <Loading trusted c
ertificates from the jks keystore file C:\Oracle\MIDDLE~1\WLSERV~1.3\server\lib\
DemoTrust.jks.>
<May 7, 2013 4:38:08 AM MST> <Notice> <Security> <BEA-090169> <Loading trusted c
ertificates from the jks keystore file C:\Oracle\MIDDLE~1\JROCKI~1\jre\lib\secur
ity\cacerts.>
<May 7, 2013 4:38:08 AM MST> <Alert> <Security> <BEA-090152> <Demo trusted CA ce
rtificate is being used in production mode: [
Version: V3
Subject: CN=CACERT, OU=FOR TESTING ONLY, O=MyOrganization, L=MyTown, ST=MyStat
e, C=US
Signature Algorithm: MD5withRSA, OID = 1.2.840.113549.1.1.4
Key: Sun RSA public key, 512 bits
modulus: 955019287786924425883848070339045601504642537525227827919067306354412
25109254821799633292360521460473564159575876280112824847724589839778989962768154
40753
public exponent: 65537
Validity: [From: Thu Mar 21 13:12:27 MST 2002,
To: Tue Mar 22 13:12:27 MST 2022]
Issuer: CN=CACERT, OU=FOR TESTING ONLY, O=MyOrganization, L=MyTown, ST=MyState
, C=US
SerialNumber: [ 33f10648 fcde0deb 4199921f d64537f4]
Certificate Extensions: 1
[1]: ObjectId: 2.5.29.15 Criticality=true
KeyUsage [
Key_CertSign
Algorithm: [MD5withRSA]
Signature:
0000: 9D 26 4C 29 C8 91 C3 A7 06 C3 24 6F AE B4 F8 82 .&L)......$o....
0010: 80 4D AA CB 7C 79 46 84 81 C4 66 95 F4 1E D8 C4 .M...yF...f.....
0020: E9 B7 D9 7C E2 23 33 A4 B7 21 E0 AA 54 2B 4A FF .....#3..!..T+J.
0030: CB 21 20 88 81 21 DB AC 90 54 D8 7D 79 63 23 3C .! ..!...T..yc#<
] The system is vulnerable to security attacks, since it trusts certificates sig
ned by the demo trusted CA.>
<May 7, 2013 4:38:08 AM MST> <Notice> <Security> <BEA-090898> <Ignoring the trus
ted CA certificate "CN=Entrust Root Certification Authority - G2,OU=(c) 2009 Ent
rust\, Inc. - for authorized use only,OU=See www.entrust.net/legal-terms,O=Entru
st\, Inc.,C=US". The loading of the trusted certificate list raised a certificat
e parsing exception PKIX: Unsupported OID in the AlgorithmIdentifier object: 1.2
.840.113549.1.1.11.>
<May 7, 2013 4:38:08 AM MST> <Notice> <Security> <BEA-090898> <Ignoring the trus
ted CA certificate "CN=thawte Primary Root CA - G3,OU=(c) 2008 thawte\, Inc. - F
or authorized use only,OU=Certification Services Division,O=thawte\, Inc.,C=US".
The loading of the trusted certificate list raised a certificate parsing except
ion PKIX: Unsupported OID in the AlgorithmIdentifier object: 1.2.840.113549.1.1.
11.>
<May 7, 2013 4:38:08 AM MST> <Notice> <Security> <BEA-090898> <Ignoring the trus
ted CA certificate "CN=T-TeleSec GlobalRoot Class 3,OU=T-Systems Trust Center,O=
T-Systems Enterprise Services GmbH,C=DE". The loading of the trusted certificate
list raised a certificate parsing exception PKIX: Unsupported OID in the Algori
thmIdentifier object: 1.2.840.113549.1.1.11.>
<May 7, 2013 4:38:08 AM MST> <Notice> <Security> <BEA-090898> <Ignoring the trus
ted CA certificate "CN=T-TeleSec GlobalRoot Class 2,OU=T-Systems Trust Center,O=
T-Systems Enterprise Services GmbH,C=DE". The loading of the trusted certificate
list raised a certificate parsing exception PKIX: Unsupported OID in the Algori
thmIdentifier object: 1.2.840.113549.1.1.11.>
<May 7, 2013 4:38:08 AM MST> <Notice> <Security> <BEA-090898> <Ignoring the trus
ted CA certificate "CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R3". The
loading of the trusted certificate list raised a certificate parsing exception P
KIX: Unsupported OID in the AlgorithmIdentifier object: 1.2.840.113549.1.1.11.>
<May 7, 2013 4:38:08 AM MST> <Notice> <Security> <BEA-090898> <Ignoring the trus
ted CA certificate "OU=Security Communication RootCA2,O=SECOM Trust Systems CO.\
,LTD.,C=JP". The loading of the trusted certificate list raised a certificate pa
rsing exception PKIX: Unsupported OID in the AlgorithmIdentifier object: 1.2.840
.113549.1.1.11.>
<May 7, 2013 4:38:08 AM MST> <Notice> <Security> <BEA-090898> <Ignoring the trus
ted CA certificate "CN=VeriSign Universal Root Certification Authority,OU=(c) 20
08 VeriSign\, Inc. - For authorized use only,OU=VeriSign Trust Network,O=VeriSig
n\, Inc.,C=US". The loading of the trusted certificate list raised a certificate
parsing exception PKIX: Unsupported OID in the AlgorithmIdentifier object: 1.2.
840.113549.1.1.11.>
<May 7, 2013 4:38:08 AM MST> <Notice> <Security> <BEA-090898> <Ignoring the trus
ted CA certificate "CN=KEYNECTIS ROOT CA,OU=ROOT,O=KEYNECTIS,C=FR". The loading
of the trusted certificate list raised a certificate parsing exception PKIX: Uns
upported OID in the AlgorithmIdentifier object: 1.2.840.113549.1.1.11.>
<May 7, 2013 4:38:08 AM MST> <Notice> <Security> <BEA-090898> <Ignoring the trus
ted CA certificate "CN=GeoTrust Primary Certification Authority - G3,OU=(c) 2008
GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US". The loading of t
he trusted certificate list raised a certificate parsing exception PKIX: Unsuppo
rted OID in the AlgorithmIdentifier object: 1.2.840.113549.1.1.11.>
<May 7, 2013 4:39:00 AM MST> <Warning> <Socket> <BEA-000449> <Closing socket as
no data read from it on fe80:0:0:0:21c:42ff:fe6e:b382:62,088 during the configur
ed idle timeout of 5 secs>
<May 7, 2013 4:42:50 AM MST> <Warning> <Socket> <BEA-000449> <Closing socket as
no data read from it on fe80:0:0:0:21c:42ff:fe6e:b382:62,321 during the configur
ed idle timeout of 5 secs>
Thanks,
mady
Edited by: mady on May 7, 2013 5:27 PMDid you configure the web server as the last part of foundation services? You could always get a patch for IE support but the blank screen always appears if the services wasn't started up correctly or if the web server wasn't configured lastly after any configuration change.
About the Weblogic here's where you can get more info about your error message: http://docs.oracle.com/cd/E12839_01/apirefs.1111/e14397/LogMgmt.html
"BEA-170011
Warning: The LogBroadcaster on this server failed to broadcast log messages to the admin server. The Admin server may not be running. Message broadcasts to the admin server will be disabled.
Description
The LogBroadCaster on the managed server could not find a reference to the DomainLogHandler on the admin server. Messages from this server will not be logged in the domain log.
Cause
The managed server might not be able to reach the admin server. One of the possible causes could be due to the admin server being shutdown.
Action
To fix this problem, inspect the exception stack trace, correct the problem. If the admin server is shutdown, restart it to resume normal log broadcasting to the domain."
Just my 2cents... -
Help with getting Web Start working with two-way SSL
I have successfully transferred data (myclient.jnlp) utilizing web browsers (IE and Mozilla) from my web server (which is set up for two-way SSL "CLIENT-CERT" required) after using the browser's utility to "import" my client-side cert (in .p12 format).
After the browser connects and downloads the "myclient.jnlp" contents and places it in a temporary file, it then kicks off the javaws process with the temporary file as a parameter. The first thing javaws does is utilize the codebase and href values (found in the temporary file) to make a "GET" call to the server for the "myclient.jnlp" file (again).
However, this fails (with a SSL handshake error) since javaws uses a different keystore than IE - the server does not receive the client-side cert. I have imported the root CA and the client cert (in .pem format) into the $JAVA_HOME/jre/lib/security/cacerts file using the keytool command but alas my server still indicates a lack of a client-side cert.
Has anyone else tried this and got it working?Hi Richard,
Indeed it appears that the 1.5 version will have more built-in capability for client certs. It has the look of the IE browser import capability. Unfortunately, I am stuck with having to utilize 1.4.2 for the time being. Since I have posted my original message I have found more information but have yet to get it all working. The truststore in javaws 1.4.2 does have a default (the 1.4.2 jre's cacert file - stragely enough not the same one that gets updated when you import the root CA! - but this has been noted in many other threads). The javaws keystore does not have a default and I have tried, to no avail yet, to utilize some command line parameters, see http://java.sun.com/j2se/1.4.2/docs/guide/security/jsse/JSSERefGuide.html#Customization - to get my client cert "available" and recognized by javaws.
With the help of some debug flags here is the output on my javaws "output" log - all seems to go well up to the point of the client's Certificate chain (which appears to be empty), after the ServerHelloDone :
trustStore is: C:\j2sdk1.4.2_04\jre\lib\security\cacerts
trustStore type is : jks
init truststore
adding as trusted cert:
snipped all the regular trusted certs, left my root CA as proof it is recognized...
adding as trusted cert:
Subject: CN=Root CA, O=Zork.org, L=Fairfax, ST=Virginia, C=US
Issuer: CN=Root CA, O=Zork.org, L=Fairfax, ST=Virginia, C=US
Algorithm: RSA; Serial number: 0x0
Valid from Wed May 26 16:38:59 EDT 2004 until Fri Jun 25 16:38:59 EDT 2004
trigger seeding of SecureRandom
done seeding SecureRandom
%% No cached client session
*** ClientHello, TLSv1
RandomCookie: GMT: 1070211537 bytes = { 205, 211, 129, 234, 88, 129, 152, 176, 223, 180, 161, 138, 246, 183, 181, 89, 61, 252, 63, 35, 21, 34, 253, 32, 254, 124, 38, 198 }
Session ID: {}
Cipher Suites: [SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_DES_CBC_SHA, SSL_DHE_RSA_WITH_DES_CBC_SHA, SSL_DHE_DSS_WITH_DES_CBC_SHA, SSL_RSA_EXPORT_WITH_RC4_40_MD5, SSL_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA]
Compression Methods: { 0 }
[write] MD5 and SHA1 hashes: len = 73
0000: 01 00 00 45 03 01 40 CA 22 D1 CD D3 81 EA 58 81 ...E..@.".....X.
0010: 98 B0 DF B4 A1 8A F6 B7 B5 59 3D FC 3F 23 15 22 .........Y=.?#."
0020: FD 20 FE 7C 26 C6 00 00 1E 00 04 00 05 00 2F 00 . ..&........./.
0030: 33 00 32 00 0A 00 16 00 13 00 09 00 15 00 12 00 3.2.............
0040: 03 00 08 00 14 00 11 01 00 .........
Thread-3, WRITE: TLSv1 Handshake, length = 73
[write] MD5 and SHA1 hashes: len = 98
0000: 01 03 01 00 39 00 00 00 20 00 00 04 01 00 80 00 ....9... .......
0010: 00 05 00 00 2F 00 00 33 00 00 32 00 00 0A 07 00 ..../..3..2.....
0020: C0 00 00 16 00 00 13 00 00 09 06 00 40 00 00 15 ............@...
0030: 00 00 12 00 00 03 02 00 80 00 00 08 00 00 14 00 ................
0040: 00 11 40 CA 22 D1 CD D3 81 EA 58 81 98 B0 DF B4 ..@.".....X.....
0050: A1 8A F6 B7 B5 59 3D FC 3F 23 15 22 FD 20 FE 7C .....Y=.?#.". ..
0060: 26 C6 &.
Thread-3, WRITE: SSLv2 client hello message, length = 98
Thread-3, READ: TLSv1 Handshake, length = 58
*** ServerHello, TLSv1
RandomCookie: GMT: 1070211539 bytes = { 81, 106, 82, 45, 233, 226, 89, 6, 38, 240, 71, 122, 90, 226, 255, 207, 9, 102, 205, 127, 223, 211, 4, 84, 79, 16, 101, 89 }
Session ID: {34, 167, 132, 174, 141, 4, 57, 197, 190, 207, 105, 117, 241, 9, 97, 81}
Cipher Suite: SSL_RSA_WITH_DES_CBC_SHA
Compression Method: 0
%% Created: [Session-1, SSL_RSA_WITH_DES_CBC_SHA]
** SSL_RSA_WITH_DES_CBC_SHA
[read] MD5 and SHA1 hashes: len = 58
0000: 02 00 00 36 03 01 40 CA 22 D3 51 6A 52 2D E9 E2 ...6..@.".QjR-..
0010: 59 06 26 F0 47 7A 5A E2 FF CF 09 66 CD 7F DF D3 Y.&.GzZ....f....
0020: 04 54 4F 10 65 59 10 22 A7 84 AE 8D 04 39 C5 BE .TO.eY.".....9..
0030: CF 69 75 F1 09 61 51 00 09 00 .iu..aQ...
Thread-3, READ: TLSv1 Handshake, length = 607
*** Certificate chain
chain [0] = [
Version: V3
Subject: CN=Root CA, O=Zork.org, L=Fairfax, ST=Virginia, C=US
Signature Algorithm: SHA1withRSA, OID = 1.2.840.113549.1.1.5
Key: SunJSSE RSA public key:
public exponent:
010001
modulus:
e2bd8de9 598e0735 2bed2057 3800c83d 348550e2 93a017c7 9845f35f cd7b4ada
6ef0c70f 7a033e69 a97ccd15 46f0d1c8 7a0ae909 ddb76f5b cd8029e6 3a6a4965
Validity: [From: Wed May 26 16:38:59 EDT 2004,
To: Fri Jun 25 16:38:59 EDT 2004]
Issuer: CN=Root CA, O=Zork.org, L=Fairfax, ST=Virginia, C=US
SerialNumber: [ 00]
Certificate Extensions: 3
[1]: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 3F A7 DF 1F FA 90 1F 98 4F BA 42 9F 21 7D B4 C4 ?.......O.B.!...
0010: 88 76 14 DA .v..
[2]: ObjectId: 2.5.29.35 Criticality=false
AuthorityKeyIdentifier [
KeyIdentifier [
0000: 3F A7 DF 1F FA 90 1F 98 4F BA 42 9F 21 7D B4 C4 ?.......O.B.!...
0010: 88 76 14 DA .v..
[CN=Root CA, O=Zork.org, L=Fairfax, ST=Virginia, C=US]
SerialNumber: [ 00]
[3]: ObjectId: 2.5.29.19 Criticality=false
BasicConstraints:[
CA:true
PathLen:2147483647
Algorithm: [SHA1withRSA]
Signature:
0000: 29 CB D0 48 E2 89 2F 8D 4A A6 73 11 71 EB 58 9D )..H../.J.s.q.X.
0010: 9E 0C 44 1F 87 C2 A3 3C C0 E7 9A E3 C4 BC A7 DD ..D....<........
0020: C4 FC 52 F1 A9 72 65 14 99 C1 A7 62 61 35 91 D8 ..R..re....ba5..
0030: AE FF FB FF 82 D8 1C EE 03 02 77 03 19 6A B0 06 ..........w..j..
Found trusted certificate:
Version: V3
Subject: CN=Root CA, O=Zork.org, L=Fairfax, ST=Virginia, C=US
Signature Algorithm: SHA1withRSA, OID = 1.2.840.113549.1.1.5
Key: SunJSSE RSA public key:
public exponent:
010001
modulus:
e2bd8de9 598e0735 2bed2057 3800c83d 348550e2 93a017c7 9845f35f cd7b4ada
6ef0c70f 7a033e69 a97ccd15 46f0d1c8 7a0ae909 ddb76f5b cd8029e6 3a6a4965
Validity: [From: Wed May 26 16:38:59 EDT 2004,
To: Fri Jun 25 16:38:59 EDT 2004]
Issuer: CN=Root CA, O=Zork.org, L=Fairfax, ST=Virginia, C=US
SerialNumber: [ 00]
Certificate Extensions: 3
[1]: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 3F A7 DF 1F FA 90 1F 98 4F BA 42 9F 21 7D B4 C4 ?.......O.B.!...
0010: 88 76 14 DA .v..
[2]: ObjectId: 2.5.29.35 Criticality=false
AuthorityKeyIdentifier [
KeyIdentifier [
0000: 3F A7 DF 1F FA 90 1F 98 4F BA 42 9F 21 7D B4 C4 ?.......O.B.!...
0010: 88 76 14 DA .v..
[CN=Root CA, O=Zork.org, L=Fairfax, ST=Virginia, C=US]
SerialNumber: [ 00]
[3]: ObjectId: 2.5.29.19 Criticality=false
BasicConstraints:[
CA:true
PathLen:2147483647
Algorithm: [SHA1withRSA]
Signature:
0000: 29 CB D0 48 E2 89 2F 8D 4A A6 73 11 71 EB 58 9D )..H../.J.s.q.X.
0010: 9E 0C 44 1F 87 C2 A3 3C C0 E7 9A E3 C4 BC A7 DD ..D....<........
0020: C4 FC 52 F1 A9 72 65 14 99 C1 A7 62 61 35 91 D8 ..R..re....ba5..
0030: AE FF FB FF 82 D8 1C EE 03 02 77 03 19 6A B0 06 ..........w..j..
[read] MD5 and SHA1 hashes: len = 607
0000: 0B 00 02 5B 00 02 58 00 02 55 30 82 02 51 30 82 ...[..X..U0..Q0.
0010: 01 FB A0 03 02 01 02 02 01 00 30 0D 06 09 2A 86 ..........0...*.
0020: 48 86 F7 0D 01 01 05 05 00 30 57 31 0B 30 09 06 H........0W1.0..
0030: 03 55 04 06 13 02 55 53 31 11 30 0F 06 03 55 04 .U....US1.0...U.
0040: 08 13 08 56 69 72 67 69 6E 69 61 31 10 30 0E 06 ...Virginia1.0..
0050: 03 55 04 07 13 07 46 61 69 72 66 61 78 31 11 30 .U....Fairfax1.0
0060: 0F 06 03 55 04 0A 13 08 5A 6F 72 6B 2E 6F 72 67 ...U....Zork.org
0070: 31 10 30 0E 06 03 55 04 03 13 07 52 6F 6F 74 20 1.0...U....Root
0080: 43 41 30 1E 17 0D 30 34 30 35 32 36 32 30 33 38 CA0...0405262038
0090: 35 39 5A 17 0D 30 34 30 36 32 35 32 30 33 38 35 59Z..04062520385
00A0: 39 5A 30 57 31 0B 30 09 06 03 55 04 06 13 02 55 9Z0W1.0...U....U
00B0: 53 31 11 30 0F 06 03 55 04 08 13 08 56 69 72 67 S1.0...U....Virg
00C0: 69 6E 69 61 31 10 30 0E 06 03 55 04 07 13 07 46 inia1.0...U....F
00D0: 61 69 72 66 61 78 31 11 30 0F 06 03 55 04 0A 13 airfax1.0...U...
00E0: 08 5A 6F 72 6B 2E 6F 72 67 31 10 30 0E 06 03 55 .Zork.org1.0...U
00F0: 04 03 13 07 52 6F 6F 74 20 43 41 30 5C 30 0D 06 ....Root CA0\0..
0100: 09 2A 86 48 86 F7 0D 01 01 01 05 00 03 4B 00 30 .*.H.........K.0
0110: 48 02 41 00 E2 BD 8D E9 59 8E 07 35 2B ED 20 57 H.A.....Y..5+. W
0120: 38 00 C8 3D 34 85 50 E2 93 A0 17 C7 98 45 F3 5F 8..=4.P......E._
0130: CD 7B 4A DA 6E F0 C7 0F 7A 03 3E 69 A9 7C CD 15 ..J.n...z.>i....
0140: 46 F0 D1 C8 7A 0A E9 09 DD B7 6F 5B CD 80 29 E6 F...z.....o[..).
0150: 3A 6A 49 65 02 03 01 00 01 A3 81 B1 30 81 AE 30 :jIe........0..0
0160: 0C 06 03 55 1D 13 04 05 30 03 01 01 FF 30 1D 06 ...U....0....0..
0170: 03 55 1D 0E 04 16 04 14 3F A7 DF 1F FA 90 1F 98 .U......?.......
0180: 4F BA 42 9F 21 7D B4 C4 88 76 14 DA 30 7F 06 03 O.B.!....v..0...
0190: 55 1D 23 04 78 30 76 80 14 3F A7 DF 1F FA 90 1F U.#.x0v..?......
01A0: 98 4F BA 42 9F 21 7D B4 C4 88 76 14 DA A1 5B A4 .O.B.!....v...[.
01B0: 59 30 57 31 0B 30 09 06 03 55 04 06 13 02 55 53 Y0W1.0...U....US
01C0: 31 11 30 0F 06 03 55 04 08 13 08 56 69 72 67 69 1.0...U....Virgi
01D0: 6E 69 61 31 10 30 0E 06 03 55 04 07 13 07 46 61 nia1.0...U....Fa
01E0: 69 72 66 61 78 31 11 30 0F 06 03 55 04 0A 13 08 irfax1.0...U....
01F0: 5A 6F 72 6B 2E 6F 72 67 31 10 30 0E 06 03 55 04 Zork.org1.0...U.
0200: 03 13 07 52 6F 6F 74 20 43 41 82 01 00 30 0D 06 ...Root CA...0..
0210: 09 2A 86 48 86 F7 0D 01 01 05 05 00 03 41 00 29 .*.H.........A.)
0220: CB D0 48 E2 89 2F 8D 4A A6 73 11 71 EB 58 9D 9E ..H../.J.s.q.X..
0230: 0C 44 1F 87 C2 A3 3C C0 E7 9A E3 C4 BC A7 DD C4 .D....<.........
0240: FC 52 F1 A9 72 65 14 99 C1 A7 62 61 35 91 D8 AE .R..re....ba5...
0250: FF FB FF 82 D8 1C EE 03 02 77 03 19 6A B0 06 .........w..j..
Thread-3, READ: TLSv1 Handshake, length = 220
*** CertificateRequest
Cert Types: RSA, DSS, Ephemeral DH (RSA sig),
Cert Authorities:
<CN=Root CA, O=Zork.org, L=Fairfax, ST=Virginia, C=US>
<CN=Server CA, OU=Server Division, O=Zork.org, L=Fairfax, ST=Virginia, C=US>
[read] MD5 and SHA1 hashes: len = 220
0000: 0D 00 00 D8 03 01 02 05 00 D2 00 59 30 57 31 0B ...........Y0W1.
0010: 30 09 06 03 55 04 06 13 02 55 53 31 11 30 0F 06 0...U....US1.0..
0020: 03 55 04 08 13 08 56 69 72 67 69 6E 69 61 31 10 .U....Virginia1.
0030: 30 0E 06 03 55 04 07 13 07 46 61 69 72 66 61 78 0...U....Fairfax
0040: 31 11 30 0F 06 03 55 04 0A 13 08 5A 6F 72 6B 2E 1.0...U....Zork.
0050: 6F 72 67 31 10 30 0E 06 03 55 04 03 13 07 52 6F org1.0...U....Ro
0060: 6F 74 20 43 41 00 75 30 73 31 0B 30 09 06 03 55 ot CA.u0s1.0...U
0070: 04 06 13 02 55 53 31 11 30 0F 06 03 55 04 08 13 ....US1.0...U...
0080: 08 56 69 72 67 69 6E 69 61 31 10 30 0E 06 03 55 .Virginia1.0...U
0090: 04 07 13 07 46 61 69 72 66 61 78 31 11 30 0F 06 ....Fairfax1.0..
00A0: 03 55 04 0A 13 08 5A 6F 72 6B 2E 6F 72 67 31 18 .U....Zork.org1.
00B0: 30 16 06 03 55 04 0B 13 0F 53 65 72 76 65 72 20 0...U....Server
00C0: 44 69 76 69 73 69 6F 6E 31 12 30 10 06 03 55 04 Division1.0...U.
00D0: 03 13 09 53 65 72 76 65 72 20 43 41 ...Server CA
Thread-3, READ: TLSv1 Handshake, length = 4
*** ServerHelloDone
[read] MD5 and SHA1 hashes: len = 4
0000: 0E 00 00 00 ....
*** Certificate chain
JsseJCE: Using JSSE internal implementation for cipher RSA/ECB/PKCS1Padding
*** ClientKeyExchange, RSA PreMasterSecret, TLSv1
Random Secret: { 3, 1, 175, 38, 47, 77, 131, 125, 209, 147, 174, 228, 183, 99, 34, 2, 100, 186, 77, 47, 65, 233, 82, 133, 183, 113, 8, 193, 51, 241, 167, 105, 4, 187, 57, 130, 161, 11, 178, 11, 134, 84, 96, 106, 203, 11, 195, 51 }
[write] MD5 and SHA1 hashes: len = 77
0000: 0B 00 00 03 00 00 00 10 00 00 42 00 40 39 9F EC ..........B.@9..
0010: 5F 92 FA 3D 5E 3D 0C 19 10 72 DA BE B6 14 76 62 _..=^=...r....vb
0020: AE 39 75 0B 74 10 C7 B1 42 D7 A1 22 C0 0E B8 A2 .9u.t...B.."....
0030: 22 80 73 20 36 A2 FD BB F9 3E F4 F0 91 CE 95 F8 ".s 6....>......
0040: 05 D7 22 FC 2C CF 1B AB 19 82 03 D2 F5 ..".,........
Thread-3, WRITE: TLSv1 Handshake, length = 77
SESSION KEYGEN:
PreMaster Secret:
0000: 03 01 AF 26 2F 4D 83 7D D1 93 AE E4 B7 63 22 02 ...&/M.......c".
0010: 64 BA 4D 2F 41 E9 52 85 B7 71 08 C1 33 F1 A7 69 d.M/A.R..q..3..i
0020: 04 BB 39 82 A1 0B B2 0B 86 54 60 6A CB 0B C3 33 ..9......T`j...3
CONNECTION KEYGEN:
Client Nonce:
0000: 40 CA 22 D1 CD D3 81 EA 58 81 98 B0 DF B4 A1 8A @.".....X.......
0010: F6 B7 B5 59 3D FC 3F 23 15 22 FD 20 FE 7C 26 C6 ...Y=.?#.". ..&.
Server Nonce:
0000: 40 CA 22 D3 51 6A 52 2D E9 E2 59 06 26 F0 47 7A @.".QjR-..Y.&.Gz
0010: 5A E2 FF CF 09 66 CD 7F DF D3 04 54 4F 10 65 59 Z....f.....TO.eY
Master Secret:
0000: 67 B9 58 74 69 18 0B 2E 00 EB AC 9B 77 15 B4 65 g.Xti.......w..e
0010: 61 A1 AC D0 F1 D5 4C CA 0E 51 FC 58 A0 11 B7 87 a.....L..Q.X....
0020: EC 72 26 D0 83 18 27 49 8F B6 32 FF E3 89 1D E4 .r&...'I..2.....
Client MAC write Secret:
0000: D5 96 AB F7 1E 46 5F 46 8A E9 3E DF A0 5E 32 5E .....F_F..>..^2^
0010: 00 FB B8 D8 ....
Server MAC write Secret:
0000: E6 7D 8E F5 6A 4C 94 4C D6 2A 3A 4D FC C1 94 A3 ....jL.L.*:M....
0010: C5 6C 5F B6 .l_.
Client write key:
0000: 18 1D 51 8C 74 6D 18 57 ..Q.tm.W
Server write key:
0000: 0D 4E 7A F1 5A D6 5F 5B .Nz.Z._[
Client write IV:
0000: 4C BB 4D FA 4F EB CB 4E L.M.O..N
Server write IV:
0000: B7 6A CA E9 66 7D 25 88 .j..f.%.
Thread-3, WRITE: TLSv1 Change Cipher Spec, length = 1
JsseJCE: Using JSSE internal implementation for cipher DES/CBC/NoPadding
*** Finished
verify_data: { 20, 20, 38, 13, 43, 235, 102, 72, 75, 212, 21, 21 }
[write] MD5 and SHA1 hashes: len = 16
0000: 14 00 00 0C 14 14 26 0D 2B EB 66 48 4B D4 15 15 ......&.+.fHK...
Padded plaintext before ENCRYPTION: len = 40
0000: 14 00 00 0C 14 14 26 0D 2B EB 66 48 4B D4 15 15 ......&.+.fHK...
0010: 90 9C E9 09 F4 48 96 A6 8F AA 04 DF E9 36 72 F0 .....H.......6r.
0020: 42 F0 60 78 03 03 03 03 B.`x....
Thread-3, WRITE: TLSv1 Handshake, length = 40
Thread-3, READ: TLSv1 Alert, length = 2
Thread-3, RECV TLSv1 ALERT: fatal, handshake_failure
Thread-3, called closeSocket()
Thread-3, handling exception: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
Finalizer, called close()
Finalizer, called closeInternal(true)
So I'll toil away trying to get *right* combination of settings - please let me know if you have any ideas! FYI here are the command line settings I am using for the keystore:
-Djavax.net.ssl.keyStore=c:\myClientIdKeyStore -Djavax.net.ssl.keyStoreType=jks -Djavax.net.ssl.keyStorePassword=myClientIdKeyStorePass
Thanks,
Paul -
Spec for this report not able to get values in the output
okSection 1: Document information
Title PP Total Component Requirement by Sales Forecast Report Create Date 5/2/2006
Author Ivie Ng Revision 1.0 Last changed on
Program type ( X ) Report ( ) Form ( ) Batch input ( ) Dialog program
Priority ( ) High ( X ) Medium ( ) Low
Frequency ( ) As require (X ) Daily ( ) Weekly ( ) Monthly ( ) Yearly
( ) Conversion
Doc-Ref.
Section 2: Contact Person
Task/Responsibility Name Signature Date
JM Project Manager Sean Gilgunn
ISS Project Manager YB Cisse
JM-Business Team Lead Sathe
Functional Consultant Ivie
ABAP Consultant Soh
User Acceptance Test / Approved by
Transport
Section 3: Functional Description
Background (whatever; Ex.Why does this program have to develop?)
This is to allow materials dept to view and analyze total component requirement base on sales forecast ie. budget forecast, inactive version within specific planning horizon.
Requirements
In SOP, material dept will maintain planning data (sales & production plan) in various version.
1. Active version: A00
This version is transferred to demand mgmt as active version. MRP will use this planning data to create order proposals (planned orders, purchase requisitions).
2. Inactive version: 001 999
There are 3 types of inactive version in SOP:
a) Sales forecast 000 799
b) Budge forecast 800 820
c) Forecast report 821 999
This report should allow to read any version of the sales forecast and return the total component requirements in the planning horizon that specify.
Section 3.1: Selection screen
Field name Technical name Type of selection field
(*Please specify Transparent Table and field name) (X) Single value ( ) Range ( ) Required field
( ) Single value (X) Range ( ) Required field
(X) Single value ( ) Range ( ) Required field
Section 3.2: Program Logic
Business Requirement
This report will allow option to choose to read the source from SOP or COPA.
Input Selection
Main Menu:
o Total Component Requirement from SOP forecast
o Total Component Requirement from COPA forecast
If SOP is selected, Source = SOP
If COPA is selected, Source = COPA
Option 1: SOP
1. Input Layout
Material: _____________ (note: allow multiple materials entry, no entry indicate all materials)
RM Material Group: __________ (note: allow multiple entry, no entry indicate all Mat Grp)
Plant: MY11 (note: default value)
Standard Price as of : _____________ (YYYYMM)
Version: ________ (note: allow F4 option with Version and Description)
Output Type: ____ (Month/Year)
(If the output type chosen is Month, the below is display)
Period From: _________ (YYYYMM)
Period To: _________ (YYYYMM)
(If the output type chosen is Year, the below is display)
Period From: __________ (YYYY)
Period To: __________ (YYYY)
2. Output Layout
Plant: MY11
Source:
Version:
System Date/Time:
Output Layout in Month:
Material Desc Component Desc UOM M04.2006 M05.2006 M06.2006 M07.2006 M08.2006 M09.2006 BOM
TO2368 NGK0003 PC TO2368
SIN96-015 MG TO2368
SIN96-066F MG TO2368
SIN96-066N MG TO2368
SIN96-127 GCL WCS2004
SIN96-055 G WCS2004
SIN96-110 G WCS2004
SIN96-007 G WCS2004
SIN96-002 GCL WCS1003
SIN96-001 GCL WCS1003
SIN96-006 GCL WCS1003
TO2358/511 PC TO2368
TO2358/512 PC TO2368
WCS2004 GCL TO2368
WCS1003 GCL WCS2004
Output Layout in Year:
Material Desc Component Desc UOM 2006 2007 2008 BOM
TO2368 NGK0003 PC TO2368
SIN96-015 MG TO2368
SIN96-066F MG TO2368
SIN96-066N MG TO2368
SIN96-127 GCL WCS2004
SIN96-055 G WCS2004
SIN96-110 G WCS2004
SIN96-007 G WCS2004
SIN96-002 GCL WCS1003
SIN96-001 GCL WCS1003
SIN96-006 GCL WCS1003
TO2358/511 PC TO2368
TO2358/512 PC TO2368
WCS2004 GCL TO2368
WCS1003 GCL WCS2004
3. Header Section:
Header Field: Plant
Print input field Plant.
Header Field: Source
If SOP is selected, Source = SOP
If COPA is selected, Source = COPA
Print Source.
Header Field: Version
Print input field Version, Print RMCP2-VETXT (version description).
Header Field: System Date/Time
Print current system date and time.
4. Table: S076 (SOP - Sales & Operations Planning)
Read S076 rows with input selection of Material, Plant, Year, Month, Version sorted by Material.
This table provides sales forecast figure.
Table: MAKT Material Decription
Table: MARA - General Material Data
Table: CDHDR - Change document header
Table: CDPOS - Change document items
5. Details Section: -
Read S076.PMNUX(Material). Note: There will be multiple rows in S076.PMNUX (Material)
Field: Material
Print S076.PMNUX(Material).
Field: Description
Read MAKT.MATNR(Material), Print MAKT.MAKTX.
6. Read L1 (Level 1) BOM Transaction: CS03
Where Material = S076.PMNUX (Material), Plant = MY11 (input field), BOM Usage = 1, Status = 01
7. This is to print BOM component.
If Input Material Group =
Read Component (Material), Component Qty from BOM sorted by MARA.MTART (material type) = ZROH, ZHLB , ZRUH
If Input Material Group <>
Read Component (Material), Component Qty from BOM sorted by MARA.MTART (material type) = ZROH, ZHLB , ZRUH
Where MARA-MATKL (Material Group) = Input Material Group.
If MARA.MTART (material type) = ZRUH,
Read L1 (Level 1) BOM Transaction: CS03
Where Material = S076.PMNUX, Plant = MY11 (input field), BOM Usage = 1, Status = 02.
GET RC29K-BMENG (Base Qty) ***
Field: Material Group
Print MARA-MATKL
Field: Component
Print BOM Component.
Field: Description
Print MAKT.MAKTX.
Field: UOM
Print MARA.MEINS.
Field: Currency
Field: Standard Price
If Input Standard Price Date =
Print Currency =
Print Standard Price = 0
Else
Read CDHDR-OBJECTID (Material), CDHDR-CHANGENR (ChgNo)
Where CDHDR-OBJECTID (Material) = BOM Component
And CDHDR-TCODE (Transaction) = MR21
And YYYYMM[CDHDR-UDATE (Date)] = Input Standard Price Date
If NOT Found, look up YYYYMM[CDHDR-UDATE (Date)] 1
I.e. Input Standard Price Date is 200702, If CDHDR-UDATE (Date) Not Found, look up 200701.
If Not Found, look up 200612 until the record is found **
If row return > 1, select the latest CDHDR-UDATE (Date)
i.e. If rows return 20070201 and 20070215, Select 20070215 **
Read CDPOS-CUKY_NEW (Currency), CDPOS-VALUE_NEW (New Value)
Where CDPOS-OBJECTID (Material) = CDHDR-OBJECTID (Material)
And CDPOS-CHANGENR (ChgNo) = CDHDR-CHANGENR (ChgNo)
Print CDPOS-CUKY_NEW (Currency)
Print CDPOS-VALUE_NEW (New Value)
8. If the output type is Year, print Requirement Qty in Yearly bucket.
Requirement Qty = sum[S076-ABSAT (Sales) for current Year] ie 2006
Requirement Qty = sum[S076-ABSAT (Sales) for current Year + 1] ie 2007
Requirement Qty = sum[S076-ABSAT (Sales) for current Year + 2] ie 2008
If the output type is Month, print Requirement Qty in Monthly bucket.
Field: Month (ie. M04.2006)
Requirement Qty = S076-ABSAT (Sales) * Component Qty / RC29K-BMENG (Base Q)
Print Requirement Qty.
Field: Total Price (ie. M04.2006)
Total Price = Requirement Qty * Standard Price
Print Total Price
Field: Month (ie. M05.2006)
Requirement Qty = S076-ABSAT (Sales) * Component Qty / RC29K-BMENG (Base Q)
Print Requirement Qty.
Field: Total Price (ie. M05.2006)
Total Price = Requirement Qty * Standard Price
Print Total Price
Field: Month (ie. M06.2006)
Requirement Qty = S076-ABSAT (Sales) * Component Qty / RC29K-BMENG (Base Q)
Print Requirement Qty.
Field: Total Price (ie. M06.2006)
Total Price = Requirement Qty * Standard Price
Print Total Price
Field: Month (ie. M07.2006)
Requirement Qty = S076-ABSAT (Sales) * Component Qty / RC29K-BMENG (Base Q)
Print Requirement Qty.
Field: Total Price (ie. M07.2006)
Total Price = Requirement Qty * Standard Price
Print Total Price
Field: Month (ie. M08.2006)
Requirement Qty = S076-ABSAT (Sales) * Component Qty / RC29K-BMENG (Base Q)
Print Requirement Qty.
Field: Total Price (ie. M08.2006)
Total Price = Requirement Qty * Standard Price
Print Total Price
Note: Repeat the requirement qty display in Monthly bucket base on period specified.
Field: BOM
Print L1 BOM which is S076.PMNUX (Material) from Step 6.
If Is end of component,
Repeat Step 5 for next Material in SOP (S076.PMNUX).
If MARA.MTART (material type) = ZROH,
Perform Step 7 to read next L1 BOM Component.
Perform Step 8 to print Requirement Qty.
If [MARA.MTART (material type) = ZHLB] and [MARA.MATKL(material group) = WP0100, WP0110, or WP0120],
Go Step 9 to read L2 BOM.
If [MARA.MTART (material type) = ZHLB] and [MARA.MATKL (material group) <> WP0100, WP0110, WP0120],
Perform Step 7 to read next BOM Component.
Perform Step 8 to print Requirement Qty.
9. Read L2 (level 2) BOM for the ZHLB at Transaction: CS03
Where Plant = MY11(input field), BOM Usage= 1, Status = 01.
GET RC29K-BMENG (Base Qty) ***
10. Read Component (Material), Component Qty from BOM sorted by MARA.MTART (material type) = ZROH, ZHLB.
Field: Material Group
Print MARA-MATKL
Field: Component
Print BOM Component.
Field: Description
Print MAKT.MAKTX.
Field: UOM
Print MARA.MEINS.
Field: Month (ie. M04.2006)
Requirement Qty = Requirement Qty from L1 BOM * Component Qty / RC29K-BMENG (Base Q)
Print Requirement Qty.
Field: Total Price (ie. M04.2006)
Total Price = Requirement Qty * Standard Price
Print Total Price
Field: Month (ie. M05.2006)
Requirement Qty = Requirement Qty from L1 BOM * Component Qty / / RC29K-BMENG (Base Q)
Print Requirement Qty.
Field: Total Price (ie. M05.2006)
Total Price = Requirement Qty * Standard Price
Print Total Price
Note: Repeat until end of Period.
Field: BOM
Print L2 BOM from Step 9.
If is end of component, perform Step 7 to read next L1 BOM component, and Step 8 to print Requirement Qty.
If MARA.MTART (material type) = ZROH,
Perform Step 10 to read next L2 BOM Component.
If MARA.MTART (material type) = ZHLB and MARA.MATKL(material group) = WP0100, WP0110, or WP0120,
Go Step 11 to read L3 BOM.
If [MARA.MTART (material type) = ZHLB] and [MARA.MATKL (material group) <> WP0100, WP0110, WP0120],
Perform Step 10 to read next L2 BOM Component.
11. Read L3 (level 3) BOM for the ZHLB at Transaction: CS03 where Plant=MY11(input field), BOM Usage=1, Status =01.
12. Read Component (Material), Component Qty from BOM sorted by MARA.MTART (material type) = ZROH, ZHLB.
Field: Material Group
Print MARA-MATKL
Field: Component
Print BOM Component.
Field: Description
Print MAKT.MAKTX.
Field: UOM
Print MARA.MEINS.
Field: Currency
Field: Standard Price
Read CDHDR-OBJECTID (Material), CDHDR-CHANGENR (ChgNo)
Where CDHDR-OBJECTID (Material) = BOM Component
And CDHDR-TCODE (Transaction) = MR21
And YYYYMM[CDHDR-UDATE (Date)] = Input Standard Price Date
If NOT Found, look up YYYYMM[CDHDR-UDATE (Date)] 1
I.e. Input Standard Price Date is 200702, If CDHDR-UDATE (Date) Not Found, look up 200701.
If Not Found, look up 200612 until the record is found **
If row return > 1, select the latest CDHDR-UDATE (Date)
i.e. If rows return 20070201 and 20070215, Select 20070215 **
Read CDPOS-CUKY_NEW (Currency), CDPOS-VALUE_NEW (New Value)
Where CDPOS-OBJECTID (Material) = CDHDR-OBJECTID (Material)
And CDPOS-CHANGENR (ChgNo) = CDHDR-CHANGENR (ChgNo)
Print CDPOS-CUKY_NEW (Currency)
Print CDPOS-VALUE_NEW (New Value)
Field: Month (ie. M04.2006)
Requirement Qty = Requirement Qty from L2 BOM * Component Qty / RC29K-BMENG (Base Q)
Print Requirement Qty.
Field: Total Price (ie. M04.2006)
Total Price = Requirement Qty * Standard Price
Print Total Price
Field: Month (ie. M05.2006)
Requirement Qty = Requirement Qty from L2 BOM * Component Qty / RC29K-BMENG (Base Q)
Print Requirement Qty.
Field: Total Price (ie. M05.2006)
Total Price = Requirement Qty * Standard Price
Print Total Price
Note: Repeat until end of Period.
Field: BOM
Print L3 BOM from Step 11.
If is end of component,
Perform Step 10 to read next L2 BOM Component.
If MARA.MTART (material type) = ZROH,
Perform Step 12 to read next L3 BOM Component.
If MARA.MTART (material type) = ZHLB and MARA.MATKL(material group) = WP0100, WP0110, or WP0120,
Repeat for next level of BOM reading. ** for future BOM expansion **
If [MARA.MTART (material type) = ZHLB] and [MARA.MATKL (material group) <> WP0100, WP0110, WP0120],
Perform Step 12 to read next L3 BOM Component.
13. The report is ALV format and should allow to export to Excel. See example below:
Option 2: COPA
1. Input Layout
Company Code: ________
Plant: MY11
Material: _____________ (note: allow multiple materials entry, no entry indicate all materials)
Material Group: __________ (note: allow multiple materials entry, no entry indicate all materials)
Standard Price as of : _____________ (YYYYMM)
Version: ________ (note: allow F4 option with Version and Description)
Read V_TKEVS_CL-VERSI (Version), V_TKEVS_CL-VTEXT (Version Description)
Output Type: ____ (Month/Year)
(If the output type chosen is Month, the below is display)
Period From: _________ (YYYYMM)
Period To: _________ (YYYYMM)
(If the output type chosen is Year, the below is display)
Period From: __________ (YYYY)
Period To: __________ (YYYY)
2. Header Section:
Header Field: Plant
Print input field Plant.
Header Field: Source
If SOP is selected, Source = SOP
If COPA is selected, Source = COPA
Print Source.
Header Field: Version
Print V_TKEVS_CL-VERSI (Version), V_TKEVS_CL-VTEXT (Version Description)
Header Field: System Date/Time
Print current system date and time.
3. Report details: -
Table: CE2ASIA - JM Operating Concern
If input selection is Monthly Report:-
Read CE2ASIA-ARTNR (Product No), Sum[CE2ASIA-ABSMG001 (Sales Qty)]
Where CE2ASIA-BUKRS (Company Code) = Input Company Code
And CE2ASIA-WERKS (Plant) = Input Plant
And CE2ASIA-PALEDGER (Currency Type) = 10
And [CE2ASIA-PERBL (FI Period) > = Input Period From And CE2ASIA-PERBL (FI Period) < = Input Period To]
Group by CE2ASIA-ARTNR (Product No)
If input selection is Yearly Report:-
Read CE2ASIA-ARTNR (Product No), CE2ASIA-ABSMG001 (Sales Qty)
Where CE2ASIA-BUKRS (Company Code) = Input Company Code
And CE2ASIA-WERKS (Plant) = Input Plant
And CE2ASIA-PALEDGER (Currency Type) = 10
And [YYYY[CE2ASIA-PERBL (FI Period)] > = Input Period From And CE2ASIA-PERBL (FI Period) < = Input Period To]
Note: The details similar to Option 1: SOP, refer section (5) to (13)
Section 3.3: Report Layout
Field name Technical name Comment
(Please specify Transparent Table and field name) (Ex. In case field does not read directly from transparent table but derive from formular or sum or else. Please show the detail how to do that.)
Section 3.3: Unit Test Criteria
Section 4: Technical Description
Section 4.1: Object information
Development class
Transport number
Section 4.2: Input/output file layout (In case upload/download file)
*Please determine structure of file like as below:
No. Field description Type (Char,Numeric, ) Length Note
Section 4.3: Report/Form information
Paper size Inch 11 8 X 11 Type of printer ( ) Laser printer (X) Dot matrix
Output report / Pre-printed Attach
Technical IssueHi gurus,actually this program selecion screen is linked to ..as
First screen is .Sop
.copa
Again for sop is having a selection screen and in this it is divide based on month and year seperately in two more screens.
same for copa also....
so pls tell me a correct solution where to correct and get values.
Priority is very highhhhhhhhhhhhhh,so pls help me in sorting out this. -
Class or Function Module to display PERNR based on OBJECTID
Hello All,
I have a requirement where i need to find out the Personnel Number based on the ObjectID provided in the HRP5102 infotype table.
I have tried with the CLASS CL_HRRCF_CANDIDATE and method used is GET. But the PERNR Number gettng after the execution of method is not avaialble in the database.
Could anybody help me out in finding the relationship.Any FM or Class provided is helpful.....
ThanksHi Sravan,
You can get data from a cube,with mere database 'SELECT' statements. please find the following suggestions,
All Cube related data, you can find in the tables with the naming convention ' /BIC/F*CUBENAME'. Typical nomenclature of the database table is '/BIC/F' followed by name of the cube. if your cube name is 'ZALMPOS' then the corresponding name of the fact table will be /BIC/FZALMPOS.
The data is stored in this table with all keys of DIMENSION tables. If you have to map the keys to dimension tables to get the values of the characteristics. Typical, nomenclature of Dimension tables is '/BIC/D*Characteristicname'.
Note: Check in RSA1 if all your characteristics are mapped as dimensions in your cube.
Thanks,
Santosh KB.
Maybe you are looking for
-
Error while migrating business rules
While trying to use the export/import option in EAS to migrate business rules, we have run into an error. The export itself is fine. When trying to import, it says this:(even though it lets me select the proper xml file for importing) Error while mig
-
Disable Lock Screen in Apple Music App
I play my iPhone on a speaker dock and Pandora and Audible Apps have an option to disable the Lock Screen while they play. Since it is on the speakers it is charging anyway so a logical choice. This is so nice as it remains lit and album cover shows
-
Problem accessing EJB located on remote application server
Hi there, I am working on a project where I need to use a remote EJB in my project.... I am able to do it but having a problem after that.... The problem is that for the first time when I get a remote object using JNDI lookup and call a function of t
-
Slim Tip to Barrel Tip Adapter
Anyone know where I can get a slim tip (female) to barrel tip (male) adapter? I want to use the new rectangular tip power supply to charge my older x220. The only adapters I can find are the ones that go the other way around. That is, the old barre
-
Default search engine--Comcast?
When I mistype a web address, or type in a web address that doesn't belong to a domain Safari forwards that bad address to Comcast's search engine. How can I change this so that the bad address forwards to Google? The Google bar on the top right work