2 container with 2 structures
I have two containers with two different structures. but i have always the structure from the first container in the second container, how can this be solved that i have 2 different structures in two containers.
container 1 :
IF g_custom_container1 IS INITIAL.
CREATE OBJECT g_custom_container1
EXPORTING
container_name = 'CCCONTAINER1'.
CREATE OBJECT grid1
EXPORTING
i_parent = g_custom_container1.
CALL METHOD grid1->set_table_for_first_display
EXPORTING
i_structure_name = 'structure1'
is_layout = gs_layout
CHANGING
it_outtab = lt_tab
it_fieldcatalog = lt_fct
EXCEPTIONS
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
OTHERS = 4.
endif.
container 2:
IF g_custom_container2 IS INITIAL.
CREATE OBJECT g_custom_container2
EXPORTING
container_name = 'CCCONTAINER2'.
CREATE OBJECT grid2
EXPORTING
i_parent = g_custom_container2.
CALL METHOD grid2->set_table_for_first_display
EXPORTING
i_structure_name = 'structure2'
is_layout = gs_layout
it_toolbar_excluding = pt_exclude
CHANGING
it_outtab = lt_itab2
it_fieldcatalog = lt_fct
EXCEPTIONS
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
OTHERS = 4.
endif.
see here..
CALL METHOD grid1->set_table_for_first_display
EXPORTING
i_structure_name = 'structure1' "use Caps should be STRUCTURE1
is_layout = gs_layout
CHANGING
it_outtab = lt_tab
it_fieldcatalog = lt_fct "Both the places you are using same
EXCEPTIONS
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
OTHERS = 4.
CALL METHOD grid2->set_table_for_first_display
EXPORTING
i_structure_name = 'structure2' "use CAPS
is_layout = gs_layout
it_toolbar_excluding = pt_exclude
CHANGING
it_outtab = lt_itab2
it_fieldcatalog = lt_fct "Same as above
for that reason you are getting the same in the output.
Similar Messages
-
How to use STRANS to translate XML to ABAP with deep structure
every experts, I want to use Tcode: STRANS to translate XML to ABAP, But it does not work well,
here is XML code,I want to translate this XML into an an Inter table gt_orders with deep structure of oeb, and colum oeb is also and intertable,how can I do this.
<?xml version="1.0" encoding="gb2312" ?><axmt410><ObjectID>setSalesOrder</ObjectID><azp01>000000</azp01><oea00>1</oea00><ta_oeaecn>SO-140227-3041</ta_oeaecn><oea03>25325017</oea03><oea02>2014-02-27 17:44:44.0</oea02><ta_oea002>2763.0</ta_oea002><ta_oea001>0.0</ta_oea001><oea14></oea14><oea15>25325017</oea15><oea23>RMB</oea23><oeaconf>S3</oeaconf><oea10></oea10><oeaud01>null</oeaud01><ta_oea007></ta_oea007><oea25>101</oea25><ta_oea008>0</ta_oea008><ta_oea009>null</ta_oea009><oeauser>Hanjingya</oeauser><ta_oeanday>2014-02-27 17:44:44.991</ta_oeanday><ta_oeamday>2014-02-28 08:30:14.866</ta_oeamday><ta_oeacday>2014-02-28 08:30:14.866</ta_oeacday><oeaud02>0</oeaud02><ta_oea030>null</ta_oea030><oeb><oeb03>1</oeb03><oeb04>7400208249</oeb04><oeb05>PCS</oeb05><oeb17>921.0</oeb17><oeb13>921.0</oeb13><oeb15></oeb15><oeb12>5</oeb12><oeb09>990001</oeb09><ta_oeb001></ta_oeb001><ta_oeb002>Yunnan</ta_oeb002><ta_oeb003>address1</ta_oeb003><ta_oeb004>zhangdagui、zhanglan</ta_oeb004><ta_oeb005>15974749998、15987782008</ta_oeb005><ta_oeb006>address and street</ta_oeb006><oebud01></oebud01></oeb><oeb><oeb03>2</oeb03><oeb04>7400208250</oeb04><oeb05>PCS</oeb05><oeb17>921.0</oeb17><oeb13>921.0</oeb13><oeb15></oeb15><oeb12>5</oeb12><oeb09>990001</oeb09><ta_oeb001></ta_oeb001><ta_oeb002>Yunnan</ta_oeb002><ta_oeb003>address2</ta_oeb003><ta_oeb004>zhangdagui、chenlan</ta_oeb004><ta_oeb005>15974749998、15987782008</ta_oeb005><ta_oeb006>address and street</ta_oeb006><oebud01></oebud01></oeb></axmt410>
I write these codes in SAP XSLT editor
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output encoding="iso-8859-1" indent="yes" method="xml" version="1.0"/>
<xsl:strip-space elements="*"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<ORDERS>
<xsl:apply-templates select="//axmt410"/>
</ORDERS>
</asx:values>
</asx:abap>
</xsl:template>
<xsl:template match="axmt410">
<OBJECTID>
<xsl:value-of select="ObjectID"/>
</OBJECTID>
<AZP01>
<xsl:value-of select="azp01"/>
</AZP01>
<OEA00>
<xsl:value-of select="oea00"/>
</OEA00>
<TA_OEAECN>
<xsl:value-of select="ta_oeaecn"/>
</TA_OEAECN>
<OEA03>
<xsl:value-of select="oea03"/>
</OEA03>
<OEA05>
<xsl:value-of select="oea05"/>
</OEA05>
<OEA02>
<xsl:value-of select="oea02"/>
</OEA02>
<TA_OEA002>
<xsl:value-of select="ta_oea002"/>
</TA_OEA002>
<TA_OEA001>
<xsl:value-of select="ta_oea001"/>
</TA_OEA001>
<OEA14>
<xsl:value-of select="ora14"/>
</OEA14>
<OEA15>
<xsl:value-of select="ora15"/>
</OEA15>
<OEA23>
<xsl:value-of select="ora23"/>
</OEA23>
<OEACONF>
<xsl:value-of select="oeaconf"/>
</OEACONF>
<OEA10>
<xsl:value-of select="ora10"/>
</OEA10>
<OEAUD01>
<xsl:value-of select="oeaud01"/>
</OEAUD01>
<TA_OEA007>
<xsl:value-of select="ta_oea007"/>
</TA_OEA007>
<OEA25>
<xsl:value-of select="ora25"/>
</OEA25>
<TA_OEA008>
<xsl:value-of select="ta_oea008"/>
</TA_OEA008>
<TA_OEA009>
<xsl:value-of select="ta_oea009"/>
</TA_OEA009>
<TA_OEA013>
<xsl:value-of select="ta_oea013"/>
</TA_OEA013>
<TA_OEA014>
<xsl:value-of select="ta_oea014"/>
</TA_OEA014>
<TA_OEA015>
<xsl:value-of select="ta_oea015"/>
</TA_OEA015>
<TA_OEA016>
<xsl:value-of select="ta_oea016"/>
</TA_OEA016>
<TA_OEA017>
<xsl:value-of select="ta_oea017"/>
</TA_OEA017>
<TA_OEA018>
<xsl:value-of select="ta_oea018"/>
</TA_OEA018>
<TA_OEA019>
<xsl:value-of select="ta_oea019"/>
</TA_OEA019>
<TA_OEA020>
<xsl:value-of select="ta_oea020"/>
</TA_OEA020>
<TA_OEA021>
<xsl:value-of select="ta_oea021"/>
</TA_OEA021>
<TA_OEA022>
<xsl:value-of select="ta_oea022"/>
</TA_OEA022>
<TA_OEA028>
<xsl:value-of select="ta_oea028"/>
</TA_OEA028>
<OEAUSER>
<xsl:value-of select="oeauser"/>
</OEAUSER>
<TA_OEANDAY>
<xsl:value-of select="ta_oeanday"/>
</TA_OEANDAY>
<TA_OEAMDAY>
<xsl:value-of select="ta_oeamday"/>
</TA_OEAMDAY>
<TA_OEACDAY>
<xsl:value-of select="ta_oeacday"/>
</TA_OEACDAY>
<OEAUD02>
<xsl:value-of select="oeaud02"/>
</OEAUD02>
<TA_OEA030>
<xsl:value-of select="ta_oea030"/>
</TA_OEA030>
<OEB>
<xsl:for-each select="oeb">
<OEB03>
<xsl:value-of select="oeb03"/>
</OEB03>
<OEB04>
<xsl:value-of select="oeb04"/>
</OEB04>
<OEB05>
<xsl:value-of select="oeb05"/>
</OEB05>
<OEB17>
<xsl:value-of select="oeb17"/>
</OEB17>
<OEB13>
<xsl:value-of select="oeb13"/>
</OEB13>
<OEB15>
<xsl:value-of select="oeb15"/>
</OEB15>
<OEB12>
<xsl:value-of select="oeb12"/>
</OEB12>
<OEB09>
<xsl:value-of select="oeb09"/>
</OEB09>
<TA_OEB001>
<xsl:value-of select="ta_oeb001"/>
</TA_OEB001>
<TA_OEB002>
<xsl:value-of select="ta_oeb002"/>
</TA_OEB002>
<TA_OEB003>
<xsl:value-of select="ta_oeb003"/>
</TA_OEB003>
<TA_OEB004>
<xsl:value-of select="ta_oeb004"/>
</TA_OEB004>
<TA_OEB005>
<xsl:value-of select="ta_oeb005"/>
</TA_OEB005>
<TA_OEB006>
<xsl:value-of select="ta_oeb006"/>
</TA_OEB006>
<OEBUD01>
<xsl:value-of select="oebud01"/>
</OEBUD01>
</xsl:for-each>
</OEB>
</xsl:template>
</xsl:transform>
and I use below ABAP program for a test, but the items from XML can not translate into Interner table gt_orders-oeb[]
TYPE-POOLS abap.
CONSTANTS gs_file TYPE string VALUE 'C:\temp\order02.xml'.
* This is the structure for the data from the XML file
TYPES:
BEGIN OF typ_s_oeb,
oeb03 TYPE string, "
oeb04 TYPE string, "
oeb05 TYPE string, "
oeb17 TYPE string, "
oeb13 TYPE string,
oeb15 TYPE string,
oeb12 TYPE string, "
oeb09 TYPE string, "
ta_oeb001 TYPE string, "
ta_oeb002 TYPE string, "
ta_oeb003 TYPE string, "
ta_oeb004 TYPE string, "
ta_oeb005 TYPE string, "
ta_oeb006 TYPE string, "
ta_oeb013 TYPE string, "
ta_oeb014 TYPE string, "
ta_oeb015 TYPE string, "
ta_oeb016 TYPE string, "
ta_oeb017 TYPE string, "
ta_oeb018 TYPE string, "
ta_oeb019 TYPE string, "
ta_oeb020 TYPE string, "
ta_oeb021 TYPE string, "
ta_oeb022 TYPE string, "
oebud01 TYPE string, "
END OF typ_s_oeb.
TYPES: typ_t_oeb TYPE TABLE OF typ_s_oeb WITH KEY oeb03.
TYPES:
BEGIN OF typ_s_order,
objectid TYPE string, "
azp01 TYPE string, "
oea00 TYPE string, "
ta_oeaecn TYPE string, "
oea03 TYPE string, "
oea02 TYPE string, "
ta_oea002 TYPE string, "
ta_oea001 TYPE string, "
oea14 TYPE string, "
oea15 TYPE string,
oea23 TYPE string, "
oeaconf TYPE string, "
oea10 TYPE string, "
oeaud01 TYPE string, "
ta_oea007 TYPE string, "
oea25 TYPE string, "
ta_oea008 TYPE string, "
ta_oea009 TYPE string, "
oeauser TYPE string, "
ta_oeanday TYPE string, "
ta_oeamday TYPE string, "
ta_oeacday TYPE string, "
oeaud02 TYPE string, "
ta_oea030 TYPE string, "
ta_oea013 TYPE string,
ta_oea014 TYPE string,
ta_oea015 TYPE string,
ta_oea016 TYPE string,
ta_oea017 TYPE string,
ta_oea018 TYPE string,
ta_oea019 TYPE string,
ta_oea020 TYPE string,
ta_oea021 TYPE string,
ta_oea022 TYPE string,
ta_oea025 TYPE string,
oeb TYPE typ_t_oeb,
END OF typ_s_order.
* Table for the XML content
DATA: gt_itab TYPE STANDARD TABLE OF char2048,
gs_itab LIKE LINE OF gt_itab.
* Table and work ares for the data from the XML file
DATA: gt_orders TYPE STANDARD TABLE OF typ_s_order,
gs_orders TYPE typ_s_order.
* Result table that contains references
* of the internal tables to be filled
DATA: gt_result_xml TYPE abap_trans_resbind_tab,
gs_result_xml TYPE abap_trans_resbind.
* For error handling
DATA: gs_rif_ex TYPE REF TO cx_root,
gs_var_text TYPE string.
* Get the XML file from your client
CALL METHOD cl_gui_frontend_services=>gui_upload
EXPORTING
filename = gs_file
CHANGING
data_tab = gt_itab
EXCEPTIONS
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
not_supported_by_gui = 17
error_no_gui = 18
OTHERS = 19.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
* Fill the result table with a reference to the data table.
* Within the XSLT stylesheet, the data table can be accessed with
* "IPERSON".
GET REFERENCE OF gt_orders INTO gs_result_xml-value.
gs_result_xml-name = 'ORDERS'.
APPEND gs_result_xml TO gt_result_xml.
* Perform the XSLT styleshee
TRY.
CALL TRANSFORMATION zfx_so_xml_to_abap
SOURCE XML gt_itab
RESULT (gt_result_xml).
CATCH cx_root INTO gs_rif_ex.
gs_var_text = gs_rif_ex->get_text( ).
MESSAGE gs_var_text TYPE 'S'.
ENDTRY.
LOOP AT gt_orders INTO gs_orders.
ENDLOOP.The simplest way seems to me is to use a XSL file for that. The <xsl:output> attributes doctype-system and doctype-public generate the DTD declaration <!DOCTYPE YOUR_ROOT SYSTEM "yourDTDfile.dtd"> and <!DOCTYPE YOUR_ROOT PUBLIC "yourDTDfile.dtd">, respectively.
When calling transformerInstance.transform() the XSLT processor performs the identity transformation - it just copies elements, attributes, content, processing instructions and comments to the result stream.
If you're using an xsl file for your transformation already, simply add <xsl:output doctype-system="yourDTDfile.dtd"/> to your existing XSL file.
If you're only using the identity transformation you'd need to change the line of code where you obtain the transformer instance from the TransformerFactory to:
t_factory.newTransformer(new StreamSource("test.xsl"));
and use this as test.xsl:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output doctype-system="yourDTDfile.dtd"/>
<!-- this is the identity transformation -->
<xsl:template match="*|@*|comment()|processing-instruction()|text()">
<xsl:copy>
<xsl:apply-templates select="*|@*|comment()|processing-instruction()|text()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>Good luck. -
File Content Conversion with Multiple structures
Here is the scenario
Legacy to XI -> XI to R/3 (App Server)
txt file and fixed length.
<b>Test file</b>
100WELCOME 0430000960603201321
2000000000040008000803
<b>Table2</b>
RecordType
PriorityCode
Destination
BankOrginNo
CreationDate
CretionTime
Spaces
<b>Table2</b>
RecordType
Destination
BankOrginNo
ReferenceCode
ServiceCode
RecordLength
CharactersPerBlock
PartialCompression
CompressionSpaces
<b>Content Conversion Parameters:</b>
Document Name: Details
RecordsetName : recordset
Recordsetstructure : Table1,1,Table2,*
Recordsetsequence: Ascending
RecordsetperMessage: *
Keyfieldname : KF
Kefieldtype : String(Case-Sensitive)
Table1.keyFieldValue :'1'
Table1.fieldFixedLengths:1,2,10,10,6,4,47
Table1.fieldNames :RecordType,PriorityCode,Destination,BankOrginNo,CreationDate,CretionTime,Spaces
Table2.keyFieldValue :'2'
Table2.fieldFixedLengths: 1,10,10,10,3,3,4,1,38
Table2.fieldNames:RecordType,Destination,BankOrginNo,ReferenceCode,ServiceCode,RecordLength,CharactersPerBlock,PartialCompression,CompressionSpaces
ignoreRecordsetName :true
When I am trying with first structure it is working fine, where as 2 structures it is not.
in the adopter monitoring it show it pics the file from Legacy(file adopter display green), where as SXMB_MONI it is not showing any thing.
can any body help on this do I need to maintain any other parameters for file content conversion.
Thanks
MHI,
I can see that.
The number of characters in the file for TABLE2 is lesser then the number of field size given.
for eg. if the table2 fixed field length sum is 20 ,your file contains only 10 characters. Please give complete data for table2
Test file
100WELCOME 0430000960603201321
<b>2000000000040008000803</b>
Table2.fieldFixedLengths: 1,10,10,10,3,3,4,1,38
Ragards
vijaya
Message was edited by: vijaya kumari -
Hello, I would like to create an extention that will help to
manage a
glossary.
First I need to decide on the structure of the xml document
that will
contain all glossary entries. Since I don't have much
experience with XML in
extention content, I was wondering if there are certain
recommendations I
should follow.
What is preferable: using attributes that will holt the
content or rather
having xml-elements. What is easy to parce?
I would greatly appreciate any tips, help and suggestions.
Olyalyu.oO(olga)
>First I need to decide on the structure of the xml
document that will
>contain all glossary entries. Since I don't have much
experience with XML in
>extention content, I was wondering if there are certain
recommendations I
>should follow.
I would start as simple as possible, for example with
something like
this:
<glossary>
<entry>
<term>...</term>
<explanation>...</explanation>
</entry>
<entry>
<term>...</term>
<explanation>...</explanation>
</entry>
</glossary>
Of course it also depends on what you want to do with this
structure and
if you need additional informations.
>What is preferable: using attributes that will holt the
content or rather
>having xml-elements. What is easy to parce?
There's no real rule-of-thumb whether to use elements or
attributes.
If unsure, use elements.
Micha -
Help!! - File to Idoc Mapping with Nested structure
Scenario:
I have an inbound file that has three nested records.
eg. A00, B00 and C00. C00 is nested structure of B00 and B00 nested structure of A00. All these structure can repeat N number of times in a file.
How do I map this to IDoc structure that have one segment each for the three structures in the file and nested in the same way.
Question: How is the parent child relationship established?
Suppose I have a file
A00 1234 Sam 29
B00 london LE3 XYZ
B00 US 123456
C00 2 XYZ
A00 5678 Joe 22
B00 US 23456
If I make a nested structure and then say in the file conversion properties that A00 go to segA and then B00 go to segB, but then when I come back to A00, how do I move the data to the A00?
Thanks in Advance
RgdsFrom what you have layed out, you can create a data type with 3 children, all 1..unbounded cardinality, each containing their own elements. You say they are nested, but the example you gave isn't nested... it's just A's followed by B's followed by C's. If that is the case, you can then use a data type w/ 3 subelements (A, B & C) and each of those is actually a container with the real attributes of that line in your file. (I can email you a schema quickly if you need it)
If you are saying they can occur like this:
A00 1234 Sam 29
B00 london LE3 XYZ
B00 US 123456
C00 2 XYZ
B00 US 23456
C00 2 XYZ
THEN they are nested - ie B's & C's repeat under any A. Then you must create segment B as a subelement of segment A instead of on the same level, then bury C under B. (I find this easiest w/ a text tool rather than inside XI, as I can cut/paste segments where I want them to belong...)
Good luck with setting up content conversion on that file adapter... We have done this a few times, and it can be quite interesting.
If you have trouble with the schema, you can post your email & I can give you a quick example.
Message was edited by: Amanda Derringer -
XML import for repetition, is repitition with this structure possible
If it is possible, what does the XML and or template structure have to look like, in order to support repeating sections of
1. Chapter name (as a text)
2. Table
1. Chapter name
2. Table
1. Chapter name
2. Table
and so on...
Everything should be inside a text frame, in order to let the paragraph style of "Chapter name" always begin a new page. The text container is mapped to the xml element called "grp" in the example below.
I've imported in numerous ways with varying degrees of correctness, so if there is anyone that knows what I mean and how to tackle the problem, I would be very glad. I can work around the XML and the document in almost any way...
I only get it to work if there are sufficient number of chapternames and tables put out on the body page from start. I would like InDesign to create copies of the "template"...
But having just one "template" out on the body page, I get a result like this in the structure (and just the first one is mapped to the body page template, as you can see – the rest of them being empty unmapped XML brackets):
Thanks,
AndreasI made a layout on the first body page, and then I imported into that.
Err, you mean a text frame, not a layout, right? OK, I haven't played with it that way, I'll take a look at it tomorrow (might be a while) -- if no one else ha solved it first.
(The tables are not visible in the structure, howcome?)
I believe that once a table is converted from an XML table into an InDesign table, it is no longer visible as a distinct XML object, just like two letters in a word are not visible in the structure. (I could be wrong on this).
Yes, I used CALS tables. Why? Because it was the default. I made a layout like you described and exported it to XML, cleaned up the XML,
and reimported it for my test. CALS was the default checkbox, so I went with it. I don't think it has naything to do with the structure question.
I didn't use cals tables in my own XML file, but ordinary ones, mapped by column.
Aren't those more annoying to use?
Anyhow:
... but the repetition doing it my way does not work – as it does in your sample (and for me too, trying it), dragging the structure out onto the page.
So, is dragging it a good solution for you? Is your problem solved? Or does that not meet your needs? -
Creating dynamic internal table with deep structure
Hi all,
I need to create an internal table with deep structure dynamically. I've already created tables with method 'create_dynamic_table' but I'm struggling with the deep structure.
I would need an internal table with the following structure:
DATA: BEGIN OF lt_t1,
s1 TYPE REF TO data,
s2 TYPE REF TO data,
END OF lt_t1.
S1 and S2 have to be tables.
It might be possible with RTTS but all the examples in the forums (that I've found so far) are related to at least one DDIC-structure. And that's my problem because both tables are created during runtime.
Thank you in advance
NicolaHi Frédéric,
I hope my english is good enough to explain it correctly:
We use a function builder for SEM-BPS which copies data from one Cube to another. This Cube is transactional, so you can't easily read a structure out of DDIC.
The export parameter of this function builder is a table with type 'any table'.
Until today we used a fixed definition e.g.:
TYPES:
BEGIN OF xtyp_chas,
/sie/sr_ocomp TYPE /b52/oisr_ocomp,
/sie/ts_03psp TYPE /b52/oits_03psp,
0activity TYPE /bi0/oiactivity,
0acty_elemt TYPE /bi0/oiacty_elemt,
0costelmnt TYPE /bi0/oicostelmnt,
0co_area TYPE /bi0/oico_area,
0creditor TYPE /bi0/oicreditor,
0currency TYPE /bi0/oicurrency,
0curtype TYPE /bi0/oicurtype,
0db_cr_ind TYPE /bi0/oidb_cr_ind,
0fiscper TYPE /bi0/oifiscper,
0fiscper3 TYPE /bi0/oifiscper3,
0fiscyear TYPE /bi0/oifiscyear,
0metype TYPE /bi0/oimetype,
0network TYPE /bi0/oinetwork,
0part_actty TYPE /bi0/oipart_actty,
0part_cctr TYPE /bi0/oipart_cctr,
0piobjsv TYPE /bi0/oipiobjsv,
0project TYPE /bi0/oiproject,
0unit TYPE /bi0/oiunit,
0vtdetail TYPE /bi0/oivtdetail,
0vtstat TYPE /bi0/oivtstat,
0vtype TYPE /bi0/oivtype,
0bus_area TYPE /bi0/oibus_area,
0cashdetail TYPE /bi0/oicashdetail,
0cashtype TYPE /bi0/oicashtype,
0comp_code TYPE /bi0/oicomp_code,
0coorder TYPE /bi0/oicoorder,
0cs_dimen TYPE /bi0/oics_dimen,
0cs_unit TYPE /bi0/oics_unit,
0int_bus TYPE /bi0/oiint_bus,
0part_abcpr TYPE /bi0/oipart_abcpr,
0part_coord TYPE /bi0/oipart_coord,
0part_wbsel TYPE /bi0/oipart_wbsel,
0piovalue TYPE /bi0/oipiovalue,
0profit_ctr TYPE /bi0/oiprofit_ctr,
0ps_obj TYPE /bi0/oips_obj,
0statussys0 TYPE /bi0/oistatussys0,
zfbwheroj TYPE /bic/oizfbwheroj,
END OF xtyp_chas,
BEGIN OF xtyp_kyfs,
0amount TYPE /bi0/oiamount,
0quantity TYPE /bi0/oiquantity,
zf03oaws TYPE /bic/oizf03oaws,
zf03oqty TYPE /bic/oizf03oqty,
zf03ozsta TYPE /bic/oizf03ozsta,
END OF xtyp_kyfs,
BEGIN OF xtyp_zf03g003,
s_chas TYPE xtyp_chas,
s_kyfs TYPE xtyp_kyfs,
END OF xtyp_zf03g003,
xtyp_zf03g003_t TYPE HASHED TABLE OF xtyp_zf03g003
WITH UNIQUE KEY s_chas.
DATA: lt_ibm_data TYPE xtyp_zf03g003_t,
ls_ibm_data TYPE xtyp_zf03g003.
So one table (s_chas) contains the characteristics of the Cube and the other (s_kyfs) contains the keyfigures. That's exactly the format we need for the export parameter. At the end of the program, we use the following coding to fill the export table (eto_chas):
loop at lt_ibm_data into ls_ibm_data.
collect ls_ibm_data-s_chas into eto_chas.
endloop.
So in this moment I give this table the structure that is needed to move the data into the cube. I can't change the requirement because it is a standard interface.
I would like to change that coding to be dynamically. Because if somebody changes a charasteristic or a keyfigure in the cube, we would have to change the function builder too. I don't think that the SEM-BPS department will let us know every time they've changed something anyway.
So I hope that my explanation wasn't too confusing
Nicola -
Dynamic internal table with repeated structure
Hi,
I have a requirement, in which I need to create a dynamic internal table with the below structure.
Dynamic Int. table structure: fld1 and fld2.
If another internal table (say int2), contains 3 records, then my final output table should contain the below structure.
Value 1 Value 2 Value3
fld1 fld2 fld1 fld2 fld1 fld2
If in case, the int2 table contains 10 records, then my final output table should contain the structure below.
Value 1 Value 2 ..... Value10
fld1 fld2 fld1 fld2 ..... fld1 fld2
Please advice on how to acquire this. Thanks in advance for your help.
Regards,
Swetha.You can do it...but it won't be table... it would be some thing like
itab
ref1-> strycture (field 1 field 2 field 3)
ref2-> structure (field1 field 4 )
ref3-> structure (field5 field7 )
say Define a internal table with a single field to hold a reference of Data
Go on creating Rows of different structures and storing the address into the table... you can use RTTS for same
Use the below link for RTTS (search on wiki for examples).
http://wiki.sdn.sap.com/wiki/display/ABAP/RuntimeTypeServices+%28RTTS%29 -
BLFA1 with deep structures in release 6/RFBIKR00
We are trying to upload VENDOR data in release 6 using RFBIKR00 program but when analizing the BLFA1 structure we found that is changed
there is a deep structure WRF_LFA1_BI_STY (for example)
that we do not know how to represent in the TXT file
We are not using this structure, but we asume that we have to send it as part of BLFA1 record.
Can somebody send me an example of how to write data for this BLFA1 record with this structure.
In advance Thanks.Hi Kiril,
I see what approach you are thinking about and your explanation is not idiotic at all
What I understand is that you have 6 Tables with loads of foreign keys and you want to avoid heaps of "loop at" or "select" coding-nestings. What I don't understand is, why would you want to reproduce the logic of your tables, which you already have, upon your context? I'm not seeing through what your application works like for an end user yet, maybe that's why I'm confused.
In my opinion you won't have many options to avoid some coding which contains a bit of complex Loop-At or Join-Clauses. But if you build a class and outsource the code in some public static methods, this won't be as much work as you think, assuming you make the methods a bit dynamic and reusable.
Cheers, Lukas -
Could not locate target container - with HP3
We are working to move our zen services from a Netware box to a SLES 10.1 box and I'm having some troubles getting the automatic workstation import to work. We are trying to import to workstations to an OU relative to the users OU. The tree structure is as follows
O=ORG
--OU=LOCATION
--OU=USER
--OU=WORKSTATION
The policy is assigned to the server and defined on the Platforms>General tab, I have it set to create the workstations in the user container with the optional path workstation. which has always worked on the netware box.
Here is the error I am getting on the ZDM server when I try to import the workstation.
Code:
Apr 16, 2009 8:23:00 AM Connection opened: /10.100.17.79:1112
Apr 16, 2009 8:23:00 AM Header = POST /oneNet/wsimport HTTP/1.1
NovINet: v2.0
User-Agent: ZenHttp
Host: zenwsimport:8039
Content-Length: 272
Connection: Keep-Alive
Apr 16, 2009 8:23:00 AM contentLength = 272
Apr 16, 2009 8:23:00 AM bytesRead=272 byteCount=272
Apr 16, 2009 8:23:00 AM Content is UTF-16LE encoded.
Apr 16, 2009 8:23:00 AM request = <?xml version="1.0" encoding="UTF-16LE"?>
<find_ws>
<tree>EACSTREE</tree>
<dn>EAST-DD33C7698F.Workstation.CDV.eacs</dn>
</find_ws>
Apr 16, 2009 8:23:00 AM OS = <linux>
Apr 16, 2009 8:23:00 AM FindImport Policy serverDN = CN=hal.OU=core.O=eacs
Apr 16, 2009 8:23:03 AM cn=HAL ZfD Package:General:Workstation Import,ou=core,o=eacs
Apr 16, 2009 8:23:04 AM ENTER getLdapDN - EAST-DD33C7698F.Workstation.CDV.eacs
Apr 16, 2009 8:23:04 AM ENTER doContainerSearch - Workstation,CDV,eacs
Apr 16, 2009 8:23:04 AM "eacs" is not typed.
Apr 16, 2009 8:23:04 AM "eacs" is not cached.
Apr 16, 2009 8:23:04 AM searchContainer =
Apr 16, 2009 8:23:04 AM filter = (&(name=eacs)(|(objectclass=Org*)(objectclass=Loc*)(objectclass=Coun*)(objectclass=St*)))
Apr 16, 2009 8:23:04 AM Could not find container workstation,cdv,eacs
Apr 16, 2009 8:23:04 AM EXIT getLdapDN - cn=EAST-DD33C7698F,workstation,cdv,eacs
Apr 16, 2009 8:23:04 AM Could not find workstation: cn=EAST-DD33C7698F,workstation,cdv,eacs
Apr 16, 2009 8:23:04 AM Connection closed: /10.100.17.79:1112
Apr 16, 2009 8:23:04 AM Connection opened: /10.100.17.79:1113
Apr 16, 2009 8:23:04 AM Header = POST /oneNet/wsimport HTTP/1.1
NovINet: v2.0
User-Agent: ZenHttp
Host: zenwsimport:8039
Content-Length: 944
Connection: Keep-Alive
Apr 16, 2009 8:23:04 AM contentLength = 944
Apr 16, 2009 8:23:04 AM bytesRead=944 byteCount=944
Apr 16, 2009 8:23:04 AM Content is UTF-16LE encoded.
Apr 16, 2009 8:23:04 AM request = <?xml version="1.0" encoding="UTF-16LE"?>
<new_ws>
<computer>EAST-DD33C7698F</computer>
<cpu>PENTIUM PRO</cpu>
<dns>EAST-DD33C7698F.eacs.k12.in.us</dns>
<subnet_mask>255.255.240.0</subnet_mask>
<ip>10.100.17.79</ip>
<ipx></ipx>
<mac>00:0C:29:EB:03:74</mac>
<os>WINXP (5.1 Service Pack 3)</os>
<server>FS02</server>
<user_dn>cdvteacher.Teacher.CDV.eacs</user_dn>
<login_count>11</login_count>
<auditing_version>7.0.1.0</auditing_version>
</new_ws>
Apr 16, 2009 8:23:04 AM OS = <linux>
Apr 16, 2009 8:23:04 AM FindImport Policy serverDN = CN=hal.OU=core.O=eacs
Apr 16, 2009 8:23:07 AM cn=HAL ZfD Package:General:Workstation Import,ou=core,o=eacs
Apr 16, 2009 8:23:07 AM Version = ZfD4
Apr 16, 2009 8:23:07 AM User name = cdvteacher
Apr 16, 2009 8:23:07 AM IPX address =
Apr 16, 2009 8:23:07 AM IP address = 10.100.17.79
Apr 16, 2009 8:23:07 AM Subnet mask = 255.255.240.0
Apr 16, 2009 8:23:07 AM DNS name = EAST-DD33C7698F.eacs.k12.in.us
Apr 16, 2009 8:23:07 AM Computer name = EAST-DD33C7698F
Apr 16, 2009 8:23:07 AM Server name = FS02
Apr 16, 2009 8:23:07 AM OS = WINXP (5.1 Service Pack 3)
Apr 16, 2009 8:23:07 AM CPU = PENTIUM PRO
Apr 16, 2009 8:23:07 AM MAC address = 00:0C:29:EB:03:74
Apr 16, 2009 8:23:07 AM Tree =
Apr 16, 2009 8:23:07 AM Tree =
Apr 16, 2009 8:23:07 AM User context = Teacher,CDV,eacs
Apr 16, 2009 8:23:07 AM Login count = 11
Apr 16, 2009 8:23:07 AM ENTER doContainerSearch - workstation,CDV,eacs
Apr 16, 2009 8:23:07 AM "eacs" is not typed.
Apr 16, 2009 8:23:07 AM "eacs" is not cached.
Apr 16, 2009 8:23:07 AM searchContainer =
Apr 16, 2009 8:23:07 AM filter = (&(name=eacs)(|(objectclass=Org*)(objectclass=Loc*)(objectclass=Coun*)(objectclass=St*)))
Apr 16, 2009 8:23:07 AM Could not find container workstation,cdv,eacs
Apr 16, 2009 8:23:07 AM Could not locate the target container.
Apr 16, 2009 8:23:07 AM Connection closed: /10.100.17.79:1113
When I switch to using a specific selected container, the workstation will import without any problems. I have deleted and recreated the policy, so I know that is not an issue. It looks like the problems is that the server is not recognizing that EACS is our "O" and consequently cannot figure out what context the rest of the container should be in - I am guessing based on the two "'eacs' is not typed" and "'eacs' is not cached" entries in the log.
I have tried switching my specified container from a trailing period to a trailing comma, and several different combinations of periods and commas just to try to fix things to no avail. I upgraded all of the Zen components on the server from HP2 to HP3 except the imaging stuff, and it did not help the problem.
Any help you can offer is appreciated!
AaronHey Aaron,
Was just wondering if you've found resolution to this issue.
We've been experiencing it for about a year now and just resorted to explicitly defining where we want the workstations to import to, rather than using a relative path.
Thanks!
Chris
Originally Posted by ahilton
We are working to move our zen services from a Netware box to a SLES 10.1 box and I'm having some troubles getting the automatic workstation import to work. We are trying to import to workstations to an OU relative to the users OU. The tree structure is as follows
O=ORG
--OU=LOCATION
--OU=USER
--OU=WORKSTATION
The policy is assigned to the server and defined on the Platforms>General tab, I have it set to create the workstations in the user container with the optional path workstation. which has always worked on the netware box.
Here is the error I am getting on the ZDM server when I try to import the workstation.
Code:
Apr 16, 2009 8:23:00 AM Connection opened: /10.100.17.79:1112
Apr 16, 2009 8:23:00 AM Header = POST /oneNet/wsimport HTTP/1.1
NovINet: v2.0
User-Agent: ZenHttp
Host: zenwsimport:8039
Content-Length: 272
Connection: Keep-Alive
Apr 16, 2009 8:23:00 AM contentLength = 272
Apr 16, 2009 8:23:00 AM bytesRead=272 byteCount=272
Apr 16, 2009 8:23:00 AM Content is UTF-16LE encoded.
Apr 16, 2009 8:23:00 AM request = <?xml version="1.0" encoding="UTF-16LE"?>
<find_ws>
<tree>EACSTREE</tree>
<dn>EAST-DD33C7698F.Workstation.CDV.eacs</dn>
</find_ws>
Apr 16, 2009 8:23:00 AM OS = <linux>
Apr 16, 2009 8:23:00 AM FindImport Policy serverDN = CN=hal.OU=core.O=eacs
Apr 16, 2009 8:23:03 AM cn=HAL ZfD Package:General:Workstation Import,ou=core,o=eacs
Apr 16, 2009 8:23:04 AM ENTER getLdapDN - EAST-DD33C7698F.Workstation.CDV.eacs
Apr 16, 2009 8:23:04 AM ENTER doContainerSearch - Workstation,CDV,eacs
Apr 16, 2009 8:23:04 AM "eacs" is not typed.
Apr 16, 2009 8:23:04 AM "eacs" is not cached.
Apr 16, 2009 8:23:04 AM searchContainer =
Apr 16, 2009 8:23:04 AM filter = (&(name=eacs)(|(objectclass=Org*)(objectclass=Loc*)(objectclass=Coun*)(objectclass=St*)))
Apr 16, 2009 8:23:04 AM Could not find container workstation,cdv,eacs
Apr 16, 2009 8:23:04 AM EXIT getLdapDN - cn=EAST-DD33C7698F,workstation,cdv,eacs
Apr 16, 2009 8:23:04 AM Could not find workstation: cn=EAST-DD33C7698F,workstation,cdv,eacs
Apr 16, 2009 8:23:04 AM Connection closed: /10.100.17.79:1112
Apr 16, 2009 8:23:04 AM Connection opened: /10.100.17.79:1113
Apr 16, 2009 8:23:04 AM Header = POST /oneNet/wsimport HTTP/1.1
NovINet: v2.0
User-Agent: ZenHttp
Host: zenwsimport:8039
Content-Length: 944
Connection: Keep-Alive
Apr 16, 2009 8:23:04 AM contentLength = 944
Apr 16, 2009 8:23:04 AM bytesRead=944 byteCount=944
Apr 16, 2009 8:23:04 AM Content is UTF-16LE encoded.
Apr 16, 2009 8:23:04 AM request = <?xml version="1.0" encoding="UTF-16LE"?>
<new_ws>
<computer>EAST-DD33C7698F</computer>
<cpu>PENTIUM PRO</cpu>
<dns>EAST-DD33C7698F.eacs.k12.in.us</dns>
<subnet_mask>255.255.240.0</subnet_mask>
<ip>10.100.17.79</ip>
<ipx></ipx>
<mac>00:0C:29:EB:03:74</mac>
<os>WINXP (5.1 Service Pack 3)</os>
<server>FS02</server>
<user_dn>cdvteacher.Teacher.CDV.eacs</user_dn>
<login_count>11</login_count>
<auditing_version>7.0.1.0</auditing_version>
</new_ws>
Apr 16, 2009 8:23:04 AM OS = <linux>
Apr 16, 2009 8:23:04 AM FindImport Policy serverDN = CN=hal.OU=core.O=eacs
Apr 16, 2009 8:23:07 AM cn=HAL ZfD Package:General:Workstation Import,ou=core,o=eacs
Apr 16, 2009 8:23:07 AM Version = ZfD4
Apr 16, 2009 8:23:07 AM User name = cdvteacher
Apr 16, 2009 8:23:07 AM IPX address =
Apr 16, 2009 8:23:07 AM IP address = 10.100.17.79
Apr 16, 2009 8:23:07 AM Subnet mask = 255.255.240.0
Apr 16, 2009 8:23:07 AM DNS name = EAST-DD33C7698F.eacs.k12.in.us
Apr 16, 2009 8:23:07 AM Computer name = EAST-DD33C7698F
Apr 16, 2009 8:23:07 AM Server name = FS02
Apr 16, 2009 8:23:07 AM OS = WINXP (5.1 Service Pack 3)
Apr 16, 2009 8:23:07 AM CPU = PENTIUM PRO
Apr 16, 2009 8:23:07 AM MAC address = 00:0C:29:EB:03:74
Apr 16, 2009 8:23:07 AM Tree =
Apr 16, 2009 8:23:07 AM Tree =
Apr 16, 2009 8:23:07 AM User context = Teacher,CDV,eacs
Apr 16, 2009 8:23:07 AM Login count = 11
Apr 16, 2009 8:23:07 AM ENTER doContainerSearch - workstation,CDV,eacs
Apr 16, 2009 8:23:07 AM "eacs" is not typed.
Apr 16, 2009 8:23:07 AM "eacs" is not cached.
Apr 16, 2009 8:23:07 AM searchContainer =
Apr 16, 2009 8:23:07 AM filter = (&(name=eacs)(|(objectclass=Org*)(objectclass=Loc*)(objectclass=Coun*)(objectclass=St*)))
Apr 16, 2009 8:23:07 AM Could not find container workstation,cdv,eacs
Apr 16, 2009 8:23:07 AM Could not locate the target container.
Apr 16, 2009 8:23:07 AM Connection closed: /10.100.17.79:1113
When I switch to using a specific selected container, the workstation will import without any problems. I have deleted and recreated the policy, so I know that is not an issue. It looks like the problems is that the server is not recognizing that EACS is our "O" and consequently cannot figure out what context the rest of the container should be in - I am guessing based on the two "'eacs' is not typed" and "'eacs' is not cached" entries in the log.
I have tried switching my specified container from a trailing period to a trailing comma, and several different combinations of periods and commas just to try to fix things to no avail. I upgraded all of the Zen components on the server from HP2 to HP3 except the imaging stuff, and it did not help the problem.
Any help you can offer is appreciated!
Aaron -
Report on BEx query with 2 structures (one in rows and one in columns)
Hi, experts! I have to make Crystall report on BEx query with 2 structures, one in columns (with KF's), and one in rows. Is it possible to create such report? Because when I create such report, I cant see fields in structures, only characteristics fields.
Ok, I found samr problem in another thread. Sorry.
Edited by: Mikhail Sychev on Dec 5, 2009 9:53 PMHey Flora,
Happy to hear that its working now.
Answering your question, again its upto the connection and report format you are using. Based on your question i hope you your report output should be like this.
You cannot map to two labels for the series, again this report format is possible only in cross tab through Webi. I would suggest you to concatenate the material and month in a dimension in webi like below.
I have done the concatenation in excel level, i would suggest you to do that in webi. Try to reduce the formula as much in excel.
or
If you are using Query browser connection, then i would suggest you to create a separate report which will display the actual vs plan material wise, here you need to pass the material as a prompt.
Hope this helps in clear, please revert me for any clarification. -
Report Designer with two Structure in Column
Hi Experts,
Is not possible a Report Designer use a query with 2 structure in column ?
If i need use two structure in the column, exist a workaround for this case ?
Tks and best regads ...
AlexUnfortunately not.
You may try to work around to have set of virtual chars and key figures; but resposne time will not be encouraging.
Ravi Thotahdri -
Error - Material cost estimate with quantity structure
Hello Gurus!
Can anyone please help with the following problem:
Im trying to do the material cost estimate with quantity structure, but the system is throwing back the message " There is no exchange rate for exchange rate type P on 1.01.2008: CHF -> EUR".
This happens because I have a subcontratation in my routing in CHF, and in transaction OB08, and I dont had defined that rate (type P CHF EUR).
I need to know if there is any solution to the system assumes other Type of Exchange Rate (the last real exchange rate that I have introduced in my system, not the planned!)
Points will be assigned to the suitable answer.
Thanks in advance.
Mary JaneHi Sridhar
Thanks for your reply.
In OKEQ for the version 0, I have the rate type M.
I don't understand why the system throwing back the message " There is no exchange rate for exchange rate type P on 1.01.2008: CHF -> EUR".!
Do you know why?
Thanks and regards
Mary Jane -
Material cost estimate with quantity structure (tcode: CK11N)
Hey dear friends.
I donu2019t know in which forum I should put my question above.
In fact, Iu2019m new to SAP PM module.
Iu2019m trying to create material cost estimate with quantity structure (tcode: CK11N) for a material u201CXu201D.
This material is manufactured.
While running the transaction CK11N, I got an error message.
After analyzing this error message, Iu2019ve realised that somebody had assigned wrong activity types to cost centers which are linked to this material in tcode: CR03, tab: costing.
So Iu2019ve changed and assigned the right activity types.
Then, Iu2019ve tried to run the tcode CK11N again. But the system still brings the wrong activity types and seems to ignore the ones that Iu2019ve assignedu2026
It seems like the old activity types still linked to the cost centers somewhere else than in tcode CR03u2026
Any idea about what am I mising ?
Thank's in advance.
Bahia.Dear Bahia,
If its rate routing means,i guess you must be working in REM scenario.
So goto CA22,delete the existing operation and then assign the same work center in a new
operation,check what activity types is it proposing in the rate routing,if its reflecting correctly means
save the datas.
Also goto KKF6N--->click the change mode icon and then calculator button to create a preliminary cost
estimate and then save the datas.
One of our forum friend has asked you to check the production order read PP master data once
again,but understand there is no production order concept in REM scenario,only planned orders.
Then come back with your queries.
Regards
Mangalraj.S
Edited by: Mangalraj.S on Jun 17, 2009 12:05 PM -
Material Cost Estimate with Quantity Structure (How to download)
Is there a standard report or feature available in SAP to download the material cost estimate with quantity structure?
Currently we have to print screen and it is very tedious and can't do analysis with those screenshots.
Please advice.Hi,
There is a standard report you can use - S_P99_41000111 - Analyze/Compare Material Cost Estimates .
With this report, you can report the standard cost estimates for a range of materials.
Good Luck!!! Assign points if this was a useful input to you.
Thanks and Regards,
Bhuvaneswari.S
Maybe you are looking for
-
I cant use photostream on my IMAC - no problem with the iphone or Ipad. When I login on ICloud, open Iphoto and ask to connect to photostream I am told: " Iphoto could not connect to Photostream" What is wrong ?
-
Inbound DESADV IDoc Reciever port issue
Hi, We are receiving inbound idoc from gentran and the reciever port is empty when the idoc comes in. This is setting idoc to error status. We checked gentran and confirmed gentran is sending reciever port but on SAP side the port is missing. Is ther
-
How change asp ratio 16:9 to 4:3 ???
Hi I has shoot on HDV, capture and edit in 1920x1080 - 16:9 But i need to change final material to 4:3(640x480) for television So, how can i do that??? Thanks!
-
Auto Run sequence under batch processing
How to auto run sequence under batch processing in a period of time, by scripting or any pre-installed mode? Thanks!
-
I have added numerous notes to a ePub book in iBooks. Now I want to search for some of those notes. How is this done? Thanks