cancel
Showing results for 
Search instead for 
Did you mean: 

File Content Conversion-xml.keyfieldName missing

Former Member
0 Kudos

I have datatypes like this

Sender_DT

Material (1...n)

MATNR

MTART

Plant (1...n)

WERKS

Description (1...n)

MAKTX

Receiver_DT

MATMAS

MATNR

MTART

WERKS

MAKTX

and the Message Type is Sender_MT

and my flat file looks like this

Matnr Mtart werks Maktx

===================

100 hal 100 bhaskar

200 BAL 200 VIJAY

300 cal 600 bombay

400 dAL 300 VIJAYawada

500 fal 400 bhunes

600 rAL 500 Varanasi

===========================

I want to convert this to xml..where I configured like this....

Content Conversion Parameters

DcoumentName=======Sender_MT

DocumentNameSpace===http://flatfile-xmlfile

RecordsetStructure====Material,,Plant,,Description,*

RecordserSequence===Ascending

Recordsets per message==*

Material.filedNames===Matnr,Mtart

Material.fieldSeparator===<tab>

Material.processFieldNames===fromConfiguration

I am getting error that xml.keyfieldname missing.

Thanks in advance

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

is it Sender or Receiver File Content Conversion...

I believe from you example Flat File, it is Receiver FCC.

But u have configured as Sender FCC.

Pls clarify on this

madanmohan_agrawal
Contributor
0 Kudos

Hello Vijay,

The error is coming due to the following reason. you have declared multiple Recordset Structure (Material,,Plant,,Descriptio) but have given the information about only one structure(Material). So PI is asking for a key filed name.

Configure as follows.

RecordSet Structure==== Material,star symbol(*),Plant, star symbol,Description, star symbol

RecordSet sequence :Ascending

Material.filedNames===A,B

Material.keyFieldName==A

Material.keyFieldValue==100

Material.fieldSeparator===<tab>

Material.processFieldNames===fromConfiguration

Plant.filedNames===C,D

Plant.keyFieldName==A

Plant.keyFieldValue==200

Plant.fieldSeparator===<tab>

Plant.processFieldNames===fromConfiguration

Description.filedNames===E,F

Description.keyFieldName==A

Description.keyFieldValue==300

Description.fieldSeparator===<tab>

Description.processFieldNames===fromConfiguration

You have to provide information for all of your sub-structures.

Regards,

Madan Agrawal

Edited by: Madan Agrawal on Apr 10, 2009 8:57 AM

Former Member
0 Kudos

Hi Madan.,,

After Changing i got the warning like ti\his

Channel Sender_CC: Empty document found. Proceed without sending message

madanmohan_agrawal
Contributor
0 Kudos

Oh...I hope you have changed A,B,C,D as per your requirement.

Material.filedNames===A,B

Material.keyFieldName==A

Plant.filedNames===C,D

Plant.keyFieldName==C

Description.filedNames===E,F

Description.keyFieldName==E

You need to have a unique value for each substructure and make that field (with unique value) as your key field.

Regards,

Madan Agrawal

former_member192295
Active Contributor
0 Kudos

Hi,

The problem is due to spelling mistake. You have mentioned filedNames, but this one should be fieldNames

For more help on FCC find below links

sender

http://help.sap.com/saphelp_nw70/helpdata/en/2c/181077dd7d6b4ea6a8029b20bf7e55/content.htm

receiver

http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm

Former Member
0 Kudos

still getting the same error.

Former Member
0 Kudos

Hi,

You need to give the keyfield name.

Key Field Name

If you specified a variable number of substructures for Recordset Structure, in other words, at least one substructure has the value u2018*u2019, then the substructures must be identified by the parser from their content. A key field must be set with different constants for the substructures. In this case, you must specify a key field, and the field name must occur in all substructures.

Regards,

Rama

former_member192295
Active Contributor
0 Kudos

Hi,

I think the problem is due to data structure configuration and FCC. Please check it