cancel
Showing results for 
Search instead for 
Did you mean: 

How to take FCC parameters

Former Member
0 Kudos

Dear All,

 

For  file source side the following is the strucure

:20:001XXX130700012
:25:00XXXXXXXXXX7202
:28C:3XX/1
:60F:DXXXXXXXOFXXXX9153,

:61:13XXXXXX08DF62942,N001LBOT13XXXXX17//IC13XXXXXXXX190
000XXXX/0XXXXXXXXB/O1/
:86:0000XXXX/05XXXX TRF B/O 1/XXXXXXXXXXXXXX

:61:13XXXXXX08DF62942,N001LBOT13XXXXX17//IC13XXXXXXXX190

000XXXX/0XXXXXXXXB/O1/

:86:0000XXXX/05XXXX TRF B/O 1/XXXXXXXXXXXXXX

:61:13XXXXXX08DF62942,N001LBOT13XXXXX17//IC13XXXXXXXX190

000XXXX/0XXXXXXXXB/O1/

:86:0000XXXX/05XXXX TRF B/O 1/XXXXXXXXXXXXXX

:61:13XXXXXX08DF62942,N001LBOT13XXXXX17//IC13XXXXXXXX190

000XXXX/0XXXXXXXXB/O1/

:86:0000XXXX/05XXXX TRF B/O 1/XXXXXXXXXXXXXX

:62M:DXXXXX8XOFXXXXXX,             
-}

How FCC parameters are to be taken for the above structure,please explain me.

thanks & regards

Accepted Solutions (0)

Answers (3)

Answers (3)

Bhargavakrishna
Active Contributor
0 Kudos

Hi Raj,

You can use simple FCC for this, refer the parameters are defined in the below blogs

http://scn.sap.com/thread/1959491

http://scn.sap.com/message/13883828

http://scn.sap.com/message/13881422

Regards

Bhargava krishna

ambrish_mishra
Active Contributor
0 Kudos

Hi Raj Kumar,

Seems like it is an EBS file you are trying to read.

I suggest to try and read all the type of records. Would be a one time activity and map only those structure/fields which are requried.

your structure can be like

Records

     HeaderLineItem_20

          key

          details

     HeaderLineItem_25    

          key

          details

     ....................

     ....................

         

Are you trying to read the file as fixed length ? Logically you should do it that way.

HeaderLineItem_20.fieldFixedLengths4,100
HeaderLineItem_20.endSeparator'nl'
HeaderLineItem_20.fieldNameskey,Details
HeaderLineItem_20.keyFieldValue:20:

100 is to be on safer side... You can put it as 50 if you are sure field1 in your structure will not be more than 50.This is for structures which dont repeat.

Recordset sequence should be variable for structures like :61; and :96:

Recordset/message should be 1

KeyFieldName should be key

ignoreRecordsetNametrue

I am sure this will work. Try it else let me know where it fails.

Hope it helps!

Ambrish

Former Member
0 Kudos

Hi Ambrish,

  Thank you for your response,

you had mentioned "Recordset sequence should be variable for structures like :61; and :96:"

But we have only one "Recordset Sequence" in the communication channel.then how could we assingn this to particular structures.

& end of the file we have   "  -} "  how can be this curl read?

thanks & regards

ambrish_mishra
Active Contributor
0 Kudos

Hi Raj,

The recordset sequence is applicable to all the value-sets in the the record. I mentioned :61 and :96 because they will be occurring more than once and variable sequence will help there.

Ideally the source system should not be sending a ;} .You may ask them on why this is in the file at all.

else come back to the forum

Hope it helps!

Ambrish

Former Member
0 Kudos

Hi Ambrish,

   Thank you for ur response,

The Adpater able to pick only the fields

:28C:3XX/1

:60F:DXXXXXXXOFXXXX9153,

:62M:DXXXXX8XOFXXXXXX,

And remaining filelds it was not showing in Moni.

And also its also picking up the    , (Cama) in the fields 60F & 62M.

Name                                                                        VALUE

RefHeader.fieldFixedLengths                                               4,50

RefHeader.endSeparator                                                      'nl'

RefHeader.fieldNames                                                         key,Accountholder

RefHeader.fieldSeparator                                                    :

RefHeader.keyFieldValue                                                   :20

AccountIDHeader.fieldFixedLengths                                     4,50

AccountIDHeader.endSeparator                                            'nl'

AccountIDHeader.fieldNames                                                key,AccountIDnumber

AccountIDHeader.fieldSeparator                                           :

AccountIDHeader.keyFieldValue                                           :25

StatementnumberHeader.fieldFixedLengths                         4,50

StatementnumberHeader.endSeparator                                'nl'

StatementnumberHeader.fieldNames                                    key,Statementnumber

StatementnumberHeader.fieldSeparator                               :

StatementnumberHeader.keyFieldValue                               :28C

OpeningBalanceHeader.fieldFixedLengths                           4,50

OpeningBalanceHeader.endSeparator                                 ,

OpeningBalanceHeader.fieldNames                                     key,OpeningBalance

OpeningBalanceHeader.fieldSeparator                                :

OpeningBalanceHeader.keyFieldValue                               :60F

StatementLineHeader.fieldFixedLengths                              4,100

StatementLineHeader.endSeparator                                       'nl'

StatementLineHeader.fieldNames                                        key,StatementLine

StatementLineHeader.fieldSeparator                                   :

StatementLineHeader.keyFieldValue                                   :61

InfoToAccountOwnerHeader.fieldFixedLengths                    4,50

InfoToAccountOwnerHeader.endSeparator                          'nl'

InfoToAccountOwnerHeader.fieldNames                              key,Information

InfoToAccountOwnerHeader.fieldSeparator                            :

InfoToAccountOwnerHeader.keyFieldValue                          :86

ClosingBalanceHeader.fieldFixedLengths                             4,50

ClosingBalanceHeader.endSeparator                                   ,

ClosingBalanceHeader.fieldNames                                        key,ClosingBalance

ClosingBalanceHeader.fieldSeparator                                   :

ClosingBalanceHeader.keyFieldValue                                  :62M

ignoreRecordName                                                                true

had i done any mistake in the FCC parameters.

Please help me..

thanks in advace

ambrish_mishra
Active Contributor
0 Kudos

Hi Raj,

Few mistakes:

RefHeader.keyFieldValue                                               :20

should be

RefHeader.keyFieldValue                                               :20:

fieldSeparator is not required. In this case, you will get 2 values separated by comma which you can decouple later in mapping. regarding adapter not picking the other structures, please do the changes as suggested and run the interface again. If it doesn't work, revert back with screenshots of source structure and FCC.

Hope it helps!

Ambrish

Former Member
0 Kudos

Hi Ambrish,

  Thank u for response,

.

I had made changes & now its only picking up the first two fields i.e :20: & :25:

Remaining it don't.

RefHeader.fieldFixedLengths                                               4,16

RefHeader.endSeparator                                                      'nl'

RefHeader.fieldNames                                                         key,Accountholder

RefHeader.keyFieldValue                                                     :20:

AccountIDHeader.fieldFixedLengths                                     4,16

AccountIDHeader.endSeparator                                            'nl'

AccountIDHeader.fieldNames                                                key,AccountIDnumber

AccountIDHeader.keyFieldValue                                           :25:

StatementnumberHeader.fieldFixedLengths                         4,50

StatementnumberHeader.endSeparator                                'nl'

StatementnumberHeader.fieldNames                                    key,Statementnumber

StatementnumberHeader.keyFieldValue                               :28C:

Remaining are also defined as above.

ambrish_mishra
Active Contributor
0 Kudos

Hi Raj,

I can see one more mistake

StatementnumberHeader.fieldNames                                key,Statementnumber

In the data type the field name is Key.

If you fix these kid of errors, you would be able to read the file.

Ambrish

Former Member
0 Kudos

Hi Ambrish,

I had made the changes but no use.But no use.

RefHeader.lastFieldsOptional YES for all fields.

SwiftHeader.endSeparator  '2D7D'  hexadecimal value of -}.

Now its able to pick but  these three fileds :28C:,:60F:,:62M: ignoring.


thanks

ambrish_mishra
Active Contributor
0 Kudos

Hi Raj,

Your data type needs logical changes:

StatementLine should not be 0, unbounded. should be 0,1

key will always exist and should be 1..1

There are blank lines in the file shown above. I hope they are not existing in the actual file.

You have put occurance as * for each record. I do not think it is factually so but then it should work.

lastFieldOptional is not required to be honest.

You may put

ignoreRecordsetName

true

You should be able to read this file.

Hope it helps

Ambrish

ambrish_mishra
Active Contributor
0 Kudos

Hi Raj - were you able to read the file. If yes, please close the thread.

thanks

Former Member
0 Kudos

Hi Ambrish,

  there's problem with system & am not able to check it.So once its up,i can check and come back.thank u for responses.

thanks & regards

Raj

Former Member
0 Kudos

Hi Ambrish,

  Sorry for late response.

The Field nos 5 & 6 (you can see from my main question) are 0, unbounded.

When i am adding these fields in record set structure as *(Field5,*Field6,*) to both of these fields,

then i was able to see only these field values in moni and all other fields are ignoring.

Please suggest me.

thanks & regards

ambrish_mishra
Active Contributor
0 Kudos

Hi Raj,

I assume you have ironed out things like:

StatementnumberHeader.keyFieldValue                          

:28C:

In this case, StatementnumberHeader.fieldFixedLengths  will be 5,50 instead of 4 since you are reading this as a fixed length file.

Try and have occurrences which is factual.

Please show me your current structure and FCC set up. I have lost track of your query

Not sure what you mean by Field nos 5 & 6. Do you mean Row ? If yes, you should call them something like Row_:28C: for clarity.

Hope it helps!

Ambrish

Former Member
0 Kudos

thank you for you reply Ambrish,

    there's problem in our PI system.that is the reason it was unable to pick the file with '*' in Record Set Structure.

But in the Row_:61:, the value is coming in to two lines

:61:13XXXXXX08DF62942,N001LBOT13XXXXX17//IC13XXXXXXXX190

000XXXX/0XXXXXXXXB/O1/

So how can we take "endSeparator" for this field.

regards

ambrish_mishra
Active Contributor
0 Kudos

Hi Raj,

You cannot read such a file which spills through to second line. I am sure this is a data error. please confirm with the source system.

I have seen EBS files and none of them spills over to the second line.

Ambrish

PS: pls reward points if helpful.

Former Member
0 Kudos

Hi Ambrish,

  Thank you for reply,

I want to do By Pass to this file (File-File).Then how can i take FCC parameters.

Plz suggest me.

regards

ambrish_mishra
Active Contributor
0 Kudos

Hi Raj,

Do you want to bypass the integration engine or just pass the file on to a different location ?

FCC is required when you want to read the file data and transform it.

In case you want to bypass the integration engine, my question to you is:Which PI version are you on?

fyi... it is not possible to bypass Integration engine in PI 7.0 version.

This feature is available from PI 7.1 onwards using the Advanced adapter engine. Helpful link below.

http://www.riyaz.net/sap/local-processing-in-the-advanced-adapter-engine-using-pi-71/494/

Hope it helps!

Ambrish

Muniyappan
Active Contributor
0 Kudos

Hi Raj,

Thanks for sharing your input text file.

can you please share your output xml after converting from text file to xml?

it is tough to suggest only looking at your flat file?

you can check below one for basic FCC.

http://wiki.sdn.sap.com/wiki/display/XI/Basic+File+Adapter+Content+Conversion

hope this helps...

Regards,

Muniyappan.