File Content Conversion issue in PI 7.1
Hi Experts
I am working on a file to Proxy scenario, I am getting a flat file with , separated but my file will have multiple nodes and I need to do the content conversion and map it to the following structure
Interface Header
InterfaceName
UserID
Date
Time
Journal Entries (1 - Unbounded)
DocumentHeader
DocumentDate
DocHeadetext
postingDate
DocumentLineItems
lineItemno
lineitemText
postingkey
InterfaceTrailer
Noofrecords.
Here the problem :I have declared the InterfaceHeader, DocumentHeade,DocumentLineItems and Interface trailer but for Journal entries node what are all the parameters to declare in the content conversion
please let me know if there are any solutions for this coples structure (content conversion)
Thanks
PR
<?xml version="1.0" encoding="UTF-8"?>
<!-- New document created with EditiX at Thu May 12 18:57:06 EDT 2011 -->
<xsd:schema targetNamespace="http://pi.dvn.com/fa/app/ecc/journalEntries/10" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://pi.dvn.com/fa/app/ecc/journalEntries/10">
<xsd:element name="MT_JournalEntryVouchers" type="DT_JournalEntryVouchers"/>
<xsd:complexType name="DT_JEHeader">
<xsd:annotation>
<xsd:documentation xml:lang="EN">Journal Entry Header structure</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="documentDate">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="docHeaderText" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="25"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="postingDate">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="companyCode">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="currency" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="5"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="documentType">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="transactionCode">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="referenceNumber" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="16"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="accrualReasonForReversal" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="accrualReversalDate" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="taxCalculationFlag" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="DT_JELineItems">
<xsd:annotation>
<xsd:documentation xml:lang="EN">Journal Entry Line Items structure</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="lineItemNumber">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="lineItemText" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="50"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="postingKey">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="companyCodeLineitem">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="accountNumber">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="17"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="transactionAmount">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="13"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="costCenter" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="accountType">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="wbsElement" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="8"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="quantity" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="13"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="unitOfMeasure" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="productionDate" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="tradingPartner" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="6"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="materialNumber" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="18"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="paymentKeyTerms" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="paymentBlockKey" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="paymentMethod" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="paymentMethodSupplement" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="baselineDate" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="witholdingTaxCode" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="payer_payeeNumber" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="jointVenture" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="6"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="equityGroup" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="partnerAcctNumber" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="recoveryIndicator" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="billingIndicator" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="orderNumber" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="12"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="profitCenter" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="partnerProfitCenter" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="assignment" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="18"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="referenceKey" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="12"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="transactionType" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="amountInLocalCurrency" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="13"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="amountInGroupCurrency" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="13"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="taxCode" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="splGLIndicator" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="assetTransactionType" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="xref2" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="12"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="DT_JournalEntryRecord">
<xsd:annotation>
<xsd:documentation xml:lang="EN">Record Set for Journal Entry</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="InterfaceHeader" type="DT_InterfaceHeader"/>
<xsd:element name="journalEntries" type="DT_JEDocument" maxOccurs="unbounded"/>
<xsd:element name="InterfaceTrailer" type="DT_InterfaceTrailer"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="DT_JEDocument">
<xsd:annotation>
<xsd:documentation xml:lang="EN">Journal Entry Document Data Type</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="documentHeader" type="DT_JEHeader"/>
<xsd:element name="documentLineItems" type="DT_JELineItems" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="DT_InterfaceTrailer">
<xsd:sequence>
<xsd:element name="numberOfRecords" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="DT_JournalEntryVouchers">
<xsd:annotation>
<xsd:documentation xml:lang="EN">Journal Entry Voucher Interface structure</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="JournalEntryRecordSet" type="DT_JournalEntryRecord"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="DT_InterfaceHeader">
<xsd:sequence>
<xsd:element name="interfaceName" type="xsd:string"/>
<xsd:element name="userID" type="xsd:string" minOccurs="0"/>
<xsd:element name="runDate" type="xsd:string" minOccurs="0"/>
<xsd:element name="runTime" type="xsd:string" minOccurs="0"/>
<xsd:element name="testRun" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
Similar Messages
-
XI File Content Conversion Issue
Peace to All,
I am having this funny problem in File Content Conversion:
com.sap.aii.utilxi.misc.api.BaseRuntimeException: RuntimeException in Message-Mapping transformation: Cannot produce target element /ns0:ZIN_MT. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd
What did I do:
DATA TYPE1.
Structure1: TESTOUT_DT Complex Type
REC Element 1-1
Name11 Element xsd:string 1-1
Name12 Element xsd:string 1-1
Structure2: TESTIN_DT Complex Type
Name21 Element xsd:string 1-1
Name22 Element xsd:string 1-1
Mapping:
name11-name21
name12-name22
Configuration of Sender File :
DocumentName : TESTOUT_DT
Document NameSpace : http:/myspace.com/test1
RecordSetName : Recordset
Recordset Structure : Rec,1
Rec.fieldNames :name11,name12
Rec.fieldSeparator :,
Rec.endSeparator :'nl'
So when I test it it picks up the file but is unable to map it to destination.
Can anyone help me to find out why?.
One more hint is that I am using Third party Business System and I use the same for both file CC sender channel and Filereceiver channel.
I will appreciate your help.
ThanksMany thanks to your guidance...SDN is the best...It worked
Moving forward I encountered another issue, when I extend it a Trail to it and end up with this mapping:
ZOUT_MT 11 -ZIN_MT 11
Recordset 1--1
Rec 1unboundedTest01 1-----unbounded
key(string) 1...1----
key 1..1(string)
name11(string) 1..1----
name21 1..1(string)
name12(string) 1..1----
name22 1..1(string)
Trail 1...1 -
Trail 1---1
key(string) 1..1 -
key 1..1(string)
test(string) 1...1 -
test1..1 (string)
In Config: Sender File CC
Doc Name :ZOUT_MT
Doc namspace : http://mytest.com/test1
RecordsetName : Recordset
Recordset Structure : Rec,*,Trail,1
Key Field Name : key
Recordset per message : 1
Rec.fieldNames : key,name11,name12
Rec.fieldSeparator : ,
Rec.endSeparator : 'nl'
Rec.processConfiguration: FromConfiguration
Rec.keyFieldValue : 1
Trail.fieldNames: key,test
Trail.endSeparator: 'nl'
Trail.processConfiguration : FromConfiguration
Trail.keyFieldValue : 1
Trail.fieldSeparator : ,
From all this work above , when I put the file having:
1,111,112
1,222,223
1,333,334
1,99
The output file in empty (null)...
Does anyone out there understand why the output file is becoming null..
here is the log I get in workbecnh (commuunication channel)
Audit Log for Message: c1a434f5-ad9f-4a26-08c1-e7d579a5927a
Time Stamp Status Description
21.01.2009 11:48:22 Success Channel ztest_sender_cc: Entire file content converted to XML format
21.01.2009 11:48:22 Warning Channel ztest_sender_cc: Empty document found. Proceed without sending message
21.01.2009 11:48:22 Success File "/mylocation/interface/SCM/somefolder/in/shilpagirlsinput.txt" deleted after processing -
Hi ,
My Scenario is File to FIle having Sender .CVS using File Content Conversion
The sender file is coming below as an example,
a,b,"c,d,e",f
Here I need to consider Double code value "c,d,e" as a single field value using File separator as COMMA(,)
Please guide me how to achieve this type of file using FCC with file separator COMMA.Hi Dilip,
We had a similar problem where the name for eg: "John,Smith" when written into a .csv file were considered as "John","Smith" as two different entities instead of one. The solution was we used the character quotes " before and after the name field message mapping before it is sent to channel for .csv conversion as shown in the screenshot. Now it is treated as one single filed instead of two.
Hope this helps!
Thanks,
Divya. -
Sender File Content Conversion Issue
Hi guys,
I´m trying to convert a flat file into a xml structure using FCC. The flat file looks like:
G220520102205201003062010
D824000 006500015010000000000000GPDME 4521005 LP00
D351023 006500015010000000000000GPDME 4521005 LP00
D523000 006500015010000000000010GPDME 4521005 LP00
G220520102205201003062010
D824000 006500012510000002442490GPDME 4521005 LP00
D351023 006500012510000000049530GPDME 4521005 LP00
D523000 006500012510000000517790GPDME 4521005 LP00
G220520102305201003062010
D824000 006500012510000000025240GPDME 4521005 LP00
I´ve created the following DT:
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:sap.com" targetNamespace="urn:sap.com">
<xsd:complexType name="DT_PRODUCTS_OUT">
<xsd:sequence>
<xsd:element name="RECORDS" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="REG_TYPE" type="xsd:string"></xsd:element>
<xsd:element name="PSTNG_DATE" type="xsd:string"></xsd:element>
<xsd:element name="DOC_DATE" type="xsd:string"></xsd:element>
<xsd:element name="FECINT" type="xsd:string"></xsd:element>
<xsd:element name="DETAIL" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="REG_TYPE" type="xsd:string"></xsd:element>
<xsd:element name="MATERIAL" type="xsd:string"></xsd:element>
<xsd:element name="PLANT" type="xsd:string"></xsd:element>
<xsd:element name="STGE_LOC" type="xsd:string"></xsd:element>
<xsd:element name="MOVE_TYPE" type="xsd:string"></xsd:element>
<xsd:element name="ENTRY_QNT" type="xsd:string"></xsd:element>
<xsd:element name="ENTRY_UOM" type="xsd:string"></xsd:element>
<xsd:element name="ITEM_TEXT" type="xsd:string"></xsd:element>
<xsd:element name="COSTCENTER" type="xsd:string"></xsd:element>
<xsd:element name="TR_PART_BA" type="xsd:string"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
As you can see the record DETAIL is nested to the record RECORDS. The point is that with the standard module of the FCC I can´t achieve my requirements, I only could get an XML structure like this:
<Recordset>
*<RECORDS>*
<REG_TYPE>G</REG_TYPE>
<PSTNG_DATE>22052010</PSTNG_DATE>
<DOC_DATE>22052010</DOC_DATE>
<FECINT>03062010</FECINT>
*</RECORDS>*
*<DETAIL>*
<REG_TYPE>D</REG_TYPE>
<MATERIAL>824000</MATERIAL>
<PLANT>0065</PLANT>
<STGE_LOC>0001</STGE_LOC>
<MOVE_TYPE>501</MOVE_TYPE>
<ENTRY_QNT>0000000000000</ENTRY_QNT>
<ENTRY_UOM>GPD</ENTRY_UOM>
<ITEM_TEXT>ME</ITEM_TEXT>
<COSTCENTER>4521005</COSTCENTER>
<TR_PART_BA>LP00</TR_PART_BA>
*</DETAIL>*
*<DETAIL>*
<REG_TYPE>D</REG_TYPE>
<MATERIAL>351023</MATERIAL>
<PLANT>0065</PLANT>
<STGE_LOC>0001</STGE_LOC>
<MOVE_TYPE>501</MOVE_TYPE>
<ENTRY_QNT>0000000000000</ENTRY_QNT>
<ENTRY_UOM>GPD</ENTRY_UOM>
<ITEM_TEXT>ME</ITEM_TEXT>
<COSTCENTER>4521005</COSTCENTER>
<TR_PART_BA>LP00</TR_PART_BA>
*</DETAIL>*
*<DETAIL>*
<REG_TYPE>D</REG_TYPE>
<MATERIAL>523000</MATERIAL>
<PLANT>0065</PLANT>
<STGE_LOC>0001</STGE_LOC>
<MOVE_TYPE>501</MOVE_TYPE>
<ENTRY_QNT>0000000000010</ENTRY_QNT>
<ENTRY_UOM>GPD</ENTRY_UOM>
<ITEM_TEXT>ME</ITEM_TEXT>
<COSTCENTER>4521005</COSTCENTER>
<TR_PART_BA>LP00</TR_PART_BA>
*</DETAIL>*
</Recordset>
But it should look like this, with the records DETAIL inside RECORDS:
<Recordset>
+*<RECORDS>*+
<REG_TYPE>G</REG_TYPE>
<PSTNG_DATE>22052010</PSTNG_DATE>
<DOC_DATE>22052010</DOC_DATE>
<FECINT>03062010</FECINT>
*<DETAIL>*
<REG_TYPE>D</REG_TYPE>
<MATERIAL>824000</MATERIAL>
<PLANT>0065</PLANT>
<STGE_LOC>0001</STGE_LOC>
<MOVE_TYPE>501</MOVE_TYPE>
<ENTRY_QNT>0000000000000</ENTRY_QNT>
<ENTRY_UOM>GPD</ENTRY_UOM>
<ITEM_TEXT>ME</ITEM_TEXT>
<COSTCENTER>4521005</COSTCENTER>
<TR_PART_BA>LP00</TR_PART_BA>
*</DETAIL>*
*<DETAIL>*
<REG_TYPE>D</REG_TYPE>
<MATERIAL>351023</MATERIAL>
<PLANT>0065</PLANT>
<STGE_LOC>0001</STGE_LOC>
<MOVE_TYPE>501</MOVE_TYPE>
<ENTRY_QNT>0000000000000</ENTRY_QNT>
<ENTRY_UOM>GPD</ENTRY_UOM>
<ITEM_TEXT>ME</ITEM_TEXT>
<COSTCENTER>4521005</COSTCENTER>
<TR_PART_BA>LP00</TR_PART_BA>
*</DETAIL>*
*<DETAIL>*
<REG_TYPE>D</REG_TYPE>
<MATERIAL>523000</MATERIAL>
<PLANT>0065</PLANT>
<STGE_LOC>0001</STGE_LOC>
<MOVE_TYPE>501</MOVE_TYPE>
<ENTRY_QNT>0000000000010</ENTRY_QNT>
<ENTRY_UOM>GPD</ENTRY_UOM>
<ITEM_TEXT>ME</ITEM_TEXT>
<COSTCENTER>4521005</COSTCENTER>
<TR_PART_BA>LP00</TR_PART_BA>
*</DETAIL>*
+*<RECORDS>*+
</Recordset>
Any Idea how to achieve that with File Content Conversion?
Thanks in Advance,
Luis
Edited by: Luis Zarzo on Jun 14, 2010 1:22 PMSorry, I don´t know why my message format has been lost. Hopefully is a bit understandable. The point is that I want to achieve a structure like this:
What I´ve read is that this is not possible to achieve with File Content Conversion, but maybe there is a way.
Otherwise I would like to know if there is an easy way to make this using for example graphical or maybe java mapping.
Thanks a lot,
Luis -
JMS receiver adapter file content conversion issue
I'm able to successfully convert complex structure using XML2Plain using StructXML2Plain module keys. However, I'm having trouble with a simple structure. All I see is a LF in the queue.
For the simple structure, I create the message via ABAP mapping unlike complex structure.
My data looks like this -
<?xml version="1.0" ?>
- <ns1:HQ_reply_MT xmlns:ns1="urn:abc.com:HQToSAP">
<Data1> PIPXSDI3070 00000 00342YSDI3070PROCESS_MQSERIES HQXPLOR10 XPLOR.ORDER.RESULTS 0000 000000000000000086312 Invalid Process flag : 2. 065</Data1>
</ns1:HQ_reply_MT>
the only think I'm missing is the encoding="UTF-8" in the first line of the xml document. Not sure how to get this via ABAP mapping.
My conversion rules are as follows -
<b>Transform.Class com.sap.aii.messaging.adapter.Conversion
Transform.ContentType text/plain;charset=utf-8
xml.addHeaderLine 0
xml.conversionType SimpleXML2Plain
xml.fieldSeparator ","</b>
I've tried Transform.ContentType and TransformContentType, both result in success with only LF in the queue.
At this point I'm thinking its something to do with my XML message I create. Any ideas?
Thank you.You need an additional hierarchy level:
root
-> row
-> data
In your example:
<?xml version="1.0" ?>
<ns1:HQ_reply_MT xmlns:ns1="urn:abc.com:HQToSAP">
<b><row></b>
<Data1> PIPXSDI3070 00000 00342YSDI3070PROCESS_MQSERIES HQXPLOR10 XPLOR.ORDER.RESULTS 0000 000000000000000086312 Invalid Process flag : 2. 065</Data1>
<b></row></b>
</ns1:HQ_reply_MT>
Regards
Stefan -
Issue w/ File content conversion (Receiver side)
Folks, there seems to be an issue with the conversion. I've read several of threads on this forum, but none helped! Although the file is generated with 8 bytes there seems to be nothing in the file.
However when 'File' message protocol is used, the xml file is generated correctly as expected. All my other settings are fine.
Here is the scenario:
1) created Message type -
MTX
..Material
..BaseUnit
..MatGrp
..Division
2) comm. channel created for -
Transport protocol: File (NFS)
Message protocol: File content conversion
Recordset Structure: MTX
parameters:
MTX.fieldSeparator: ,
MTX.endSeparator: 'nl'
Should recordset struc. and parameters have 'ns0' prefix, i.e.,
Recordset Structure: ns0:MTX
parameters:
ns0:MTX.fieldSeparator: ,
ns0:MTX.endSeparator: 'nl'
What esle is missing? any thoughts are welcome.
Thanks and appreciate your responses.Hi ABAP JUNOON,
Could you please create another Test scenario and
try
MTI_XXX
- DATA(0..unbounded)
- fields?
i mean, without redundant RS(Record Structure).
and use
Transport protocol: File (NFS)
Message protocol: File content conversion
Recordset Structure: DATA.
it will written the complete output file.
some people create the Reciver data type for test scenario's as follows.
MTI_XXX
-RS
- DATA(0..unbounded)
- fields?
i mean with redundant RS
in this case file is generated, but nothing will be appear.
so plz take care while creating the reciver data type with FCC.
and the following case also will work i.e
MTI_XXX
-RS
-Header(0,1)
- fields?
- DATA(0..unbounded)
- fields?
- Trailer(0,1)
- fields?
Regards
Mahesh. -
File Content Conversion and Empty file issue
Hello,
The issue is :
I have configured a file sender adapter with file Content Conversion. I have 2 kinds of records Header and Items.
i have defined the 'Key Field Name' based on the first character of each line of my flat file and the values associated :
Header.keyFieldValue = 1
Item.keyFieldValue = 2
Flat file example :
1;Headerfield1;Headerfield2
2;ItemField1;ItemField1;ItemField1;ItemField1;
2;ItemField1;ItemField1;ItemField1;ItemField1;
2;ItemField1;ItemField1;ItemField1;ItemField1;
and everything works fine !
But now imagine you receive a bad file like this :
xxxxx;ohhohoh;llllll
y;sdfsdfs;zezerz;zerzer
e;zerzerze;zezerzerzer
The result is : IS receive nothing and no alert is generated ?!!!???
What i have seen is that the adapter doesn't find any corresponding value for keyFieldValue so it consider that the flat file is empty and i do nothing, the file is archived and that's all no alert is generated ????
But i want to receive an alert for checking that the processed flat file was not correct !
If anybody has an idea, it will be great !
Regards,
VincentHi Vincent.
Sometimes it really #!@#%%#.. me off when customers excepts that XI will solve their whole organization interfacing problems (and the world hunger as well...:)...
even when it comes to the responsible systems that creates the file(sometimes with bugs and problems even before XI came to the org.).as in every developed application or out of the box one, the application has to take care of its outputs and deal with errors. when it cant deliver what other systems expects her to it has to inform some one...
When it comes to the Adapter frame work XI expects the system in its landscape to be responsible for the data they send (well formed and with the defined structure...IDocs,XML,flat files).
as mentioned in my colleagues previous postings you can take care of data verification during mapping and so..
I belive it is possible to monitor the incoming file before it is parsed to XML (not sure it is the right way to) and maybe we'll get a solution to that in the future (today we can monitor the comm. channel wether its configures well or not,maybe it will be possible in the future to alert when an incoming file is empty)
Regards.
Nimrod -
Issue in File Content Conversion
hi all,
I am getting one Flat file which I need to convert in xml before processing it in mapping. Below is the structure of the input file:-
dkghdgk
gkhdggg
ghdgkhdgk
46ffsfsf
:lgjdgdgg
$dfgxvnlkas
vnmvkvas;vasofjsfasfv
vbvgfpwtndfgdjgdgdfv
vnmvlddg jgkl jklk j l;
jhkg; gj klhjg njkdgggpr83jg
nhldggdgdggfgjhgfj
Number of rows in the file is not constant.
My requirment is to convert in such a way that first 3 rows should be assigned to first three fields and forth field should contain rest all data or in other manner. But first 3 rows must be in three seperate fields, rest all rows can be defined in any way.
Please let me know if it is possible in File content conversion. If not please tell the alternate way.
Thanks
JaiHi Jaideep,
But first 3 rows must be in three separate fields, rest all rows can be defined in any way.
Please let me know if it is possible in File content conversion. If not please tell the alternate way.
Is it fine if you read the flat file line by line and a temporary structure is created which will
have a field say Row under a node DATA,
row will repeat as number of times as there are lines in the input file.
later you can keep first three line as different fields and merge the remaining in a single field.
You may have to create two mappings to map it to the actual structure required .
Please refer this blog(see the screenshots in the blog)
/people/sravya.talanki2/blog/2005/08/16/configuring-generic-sender-file-cc-adapter
My requirment is to convert in such a way that first 3 rows should be
assigned to first three fields and forth field should contain rest all data or in
other manner.
so you can merge the 4 th row and onwards into a single field in the mapping
Regards,
Srinivas -
File-Sender: Verification of file content during file content conversion
Hello,
I have a question regarding file verification when using the file-sender adapter.
I got a flat file (.csv) that I convert into XML with the file-sender adapter and file-content-conversion.
In the file there is a column RecTyp that is my KeyFieldValue. Possible values for RecTyp are B, D, U, T.
So far so good. All this works perfectly.
If (due to an error) there is another value in RecTyp than the 4 mentioned above (B;D;U;T) the file adapter ignores this row today. And here begins my issue:
I want to change this behavior. That means in detail, I want to check if there is another value in my KeyFieldValue RecTyp than specified. If this is the case an exception should be thrown. The whole message should not be delivered.
We had the idea to use the module-processor for this verification .
But may be there are other suggestions. Or may be some one can provide an appropriate module that is already written, etc .
Does anyone have an idea?
Kind regards,
TobiasHi,
It is better to pick the file in generic way i.e Row by Row and then go with the validation with the help of Adapter Modules or in the Mapping.
For more-
/people/sravya.talanki2/blog/2005/08/16/configuring-generic-sender-file-cc-adapter
Thanks,
Moorthy -
Supress Column Heading - File Content Conversion in Sender Adapter
Hi,
Let me give a more clear picture about my scenario. I need to convert CSV File to XML output:-
My source file has column heading and values. The sample data is mentioned hereunder:-
PERNR;KID;PNALT;NACHN;NAME2;VORNA
;1200;1200;Angus
I have created a data type as under:-
DT_LegacyEmployee (Category - Complex Type)
Employees (Category - Element, Occurence - 1)
Header (Category - Element, Occurence - 0...1)
PERNR_H
KID_H
PNALT_H
NACHN_H
NAME2_H
VORNA_H
Employee (Categroy - Element, Type - DT_LegacyEmployee_Row, Occurence - 0...unbounded)
PERNR
KID
PNALT
NACHN
NAME2
VORNA
The file conversion parameters in the file sender adapter are mentioned hereunder:-
Document Name - MT_LegacyEmployee
Document Namespace - http://abc.com/xi
Recordset Name - Employees
Rescordset Structure - Header,1,Employee,*
Recordsets per Message - 1
Key Field Type - String (Case Sensitive)
Employee.fieldSeparator - ;
Employee.endSeparator - 'nl'
Employee.fieldNames - PERNR,KID,PNALT,NACHN,NAME2,VORNA
I dont' have a key field value. How do we remove the header and show only the values in the xml output. I have searched the forum topics as well checked many blogs related to file content conversion, but nothing helped. Kindly advice how to fix this issue. Thanks in advance.
Regards.
PraveenHi Praveen,
Change your File Adapter as below
Document Name - MT_LegacyEmployee
Document Namespace - http://abc.com/xi
Recordset Name - Employees
Rescordset Structure - Employee,*
Recordsets per Message - 1
Key Field Type - String (Case Sensitive)
Employee.fieldSeparator - ;
Employee.endSeparator - 'nl'
Employee.fieldNames - PERNR,KID,PNALT,NACHN,NAME2,VORNA
There is no need for the Header required in the data type.
DT_LegacyEmployee (Category - Complex Type)
Employees (Category - Element, Occurence - 1)
Employee (Categroy - Element, Type - DT_LegacyEmployee_Row, Occurence - 0...unbounded)
PERNR
KID
PNALT
NACHN
NAME2
VORNA
Now the trick is in the mapping program
Lets assume your mapping looks like
MT_LegacyEmployee ---> MT_TargetEmployee
- Employees ---> Records
- Employee ---> Record
- PERNR ---> TargetPERNR
- .. so on
When you do a mapping from Employee ---> Record apply the following logic.
(PERNR)--->
(TestEquals =) --->(NOT)--->
(Constant) ---> (IF)
(PERNR) (IF Without Else) ---> (Record)
(THEN)
(Employee)--->
When doing this make sure RightClick on PERNR and Select Context ---> Employees.
By default context would be from Employee and it will give you an error of XSD format. So make sure you are changing the context. -
File Content Conversion -All the input content was not shown in output file
Hi Experts,
In my scenario, I need to send data from .XML file to .txt file, using File Content Conversion at Receiver communication channel. This is File to File scenario.
This is my Input xml file.
<ns:FILEINPUT_MT xmlns:ns="http://File2FileTest">
<RECORD>
<Row>
<FirstName>Susie</FirstName>
<LastName>Tony</LastName>
<City>London</City>
<Country>UK</Country>
</Row>
</RECORD>
</ns:FILEINPUT_MT>
<b>Processing Parameters</b>
Target Directory = C:/Test
File Name Scheme = xi_output.txt
File Construction Mode = Add Time Stamp
File Type = Binary
<b>Content Conversion Parameters</b>
Recordset Structure : RECORD
RECORD.endSeparator = nl
RECORD.fieldSeparator = ;
After Activate and providing the input xml file, xi_output.txt file was generated. But the file content was shown only with Susie i.e. with First Name only. I need xi_output.txt file should have all the four fields (FirstName, LastName, City, Country)
Could some one help me to resolve the issue?
Thanks in advance
SreeCheck these blogs...Might help you.
/people/venkat.donela/blog/2005/03/02/introduction-to-simplefile-xi-filescenario-and-complete-walk-through-for-starterspart1
/people/venkat.donela/blog/2005/03/03/introduction-to-simple-file-xi-filescenario-and-complete-walk-through-for-starterspart2
/people/venkat.donela/blog/2005/06/08/how-to-send-a-flat-file-with-various-field-lengths-and-variable-substructures-to-xi-30
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
/people/arpit.seth/blog/2005/06/02/file-receiver-with-content-conversion
/people/shabarish.vijayakumar/blog/2005/08/17/nab-the-tab-file-adapter
/people/jeyakumar.muthu2/blog/2005/11/29/file-content-conversion-for-unequal-number-of-columns
/people/shabarish.vijayakumar/blog/2006/02/27/content-conversion-the-key-field-problem
/people/sap.user72/blog/2005/01/06/how-to-process-csv-data-with-xi-file-adapter
/people/michal.krawczyk2/blog/2004/12/15/how-to-send-a-flat-file-with-fixed-lengths-to-xi-30-using-a-central-file-adapter
Link for SAP Help
http://help.sap.com/saphelp_nw2004s/helpdata/en/2c/181077dd7d6b4ea6a8029b20bf7e55/content.htm -
Hello,
I have Async. File receiver scenario in which the following is the XML message structure. This is received by the file adpater.
<ns1:MT_Info_File xmlns:ns1="urn:http://freemanco.com/xi/info_list">
<TYPE>
<FileItem>
<FileName>DD11022007</FileName>
</FileItem>
</TYPE>
<DATA>
<LineItem> <LineEntry>234567891234567890123456789012345678901234567890</LineEntry>
</LineItem>
<LineItem>
<LineEntry>95473523647586969587265245437586979798376524253586</LineEntry>
</LineItem>
<DATA>
<LineItem</ns1:MT_Info_File>
<u><b>I want to write only folowiing DATA structure to file. I do not want to wite contents of TYPE structure</u>
<DATA>
<LineItem> <LineEntry>234567891234567890123456789012345678901234567890</LineEntry>
</LineItem>
<LineItem>
<LineEntry>95473523647586969587265245437586979798376524253586</LineEntry>
</LineItem>
<DATA></b>
In the receiver file adpater I have follwoing <u><b>File content conversion parameters</b></u>.
RecordSetStructure: DATA,LineItem,*
*.addHeaderLine 0
*.fieldFixedLengths 301
*.fixedLengthTooShortHandling Error
*.endSeparator nl
LineItem.fieldSeparator nl
DATA.fieldSeparator nl
While testing I got following error. Looks like it is expecting some values for FileItem element in the XML.
<b>Error</b> Attempt to process file failed with java.lang.Exception: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'FileItem' found in document', probably configuration error in file adapter (XML parser error)'
<b>Error</b> MP: exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'FileItem' found in document', probably configuration error in file adapter (XML parser error)': java.lang.Exception: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'FileItem' found in document', probably configuration error in file adapter (XML parser error)'
<b>Error</b> Exception caught by adapter framework: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'FileItem' found in document', probably configuration error in file adapter (XML parser error)'
<b>Error</b> Delivery of the message to the application using connection File_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'FileItem' found in document', probably configuration error in file adapter (XML parser error)': java.lang.Exception: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'FileItem' found in document', probably configuration error in file adapter (XML parser error)'.
How to resolve this issue? I appreciate your help.
Thank you,
BalajiBalaji,
I would suggest to remove FileItem and LineItem in your receiver datatype. They are increasing the hierarchy of your content conversion. If you do that then you will have
<ns1:MT_Info_File xmlns:ns1="urn:http://freemanco.com/xi/info_list">
<TYPE>
<FileName>DD11022007</FileName>
</TYPE>
<DATA><LineEntry>234567891234567890123456789012345678901234567890</LineEntry>
<LineEntry>95473523647586969587265245437586979798376524253586</LineEntry>
<DATA>
</ns1:MT_Info_File>
Then in content converstion give this parameters:
Record structure : TYPE,FileName,DATA,LineEntry
TYPE.fieldfixedlengths : 0
FileName.fieldfixedlenghts:0
DATA.fieldfixedlenghts:0
LineEntry.fieldfixedlengths:301
LineEntry.endSeparator:'nl'
Then it should work. Also you can use FileName in your variable substituition. Also please see this weblog on how to use FileName in variable substitution:
/people/sravya.talanki2/blog/2005/08/11/solution-to-the-problem-encountered-using-variable-substitution-with-xi-sp12
If you dont want to remove FileItem and LineItem then add these also in your content conversion. Then the parameters would be:
Recordset: TYPE,FileItem,FileName,DATA,LineItem,LineEntry
TYPE.fieldfixedlengths : 0
FileItem.fieldfixedlengths:0
FileName.fieldfixedlenghts:0
DATA.fieldfixedlenghts:0
LineItem.fieldfixedlengths : 0
LineEntry.fieldfixedlengths:301
LineEntry.endSeparator:'nl'
Regards,
---Satish -
** File Content Conversion Error in Receiver CC - How to solve this?
Hi friends,
My target structure looks like below.
EmployeeJobDetails --> Message Type
JobCode --> Node
EmployeeNumber xsd:string
Domain xsd:string
JobTrack --> Node
Department xsd: string
Position xsd: string
I use the FCC parameters in the receiver CC as below:
Recordset Structure: JobCode,JobTrack
JobCode.fieldSeparator = |
JobCode.endSeparator = 'nl'
JobTrack.fieldSeparator = |
JobTrack.endSepartor = 'nl'.
Because, we want the output like below
1099|Raja
Accts|JuniorAccountant
1100|Ram
HR|Recruiter
like this.
In this scenario Source is XML and target is txt file.
I am using XSLT Mapping. The FCC works fine, if my source input file contains some records. But, when we send empty source XML file as below
<?xml version="1.0" encoding="UTF-8"?>
<EMPLOYEE_DATA/>
Mapping works fine. Message is processed successfully in SXMB_MONI. The payload in response also comes with Message Type name like below
<EmployeeJobDetails namespace >
</EmployeeJobDetails>
While convert this, the system throws below error.
Error Message:
Message processing failed. Cause: com.sap.aii.af.ra.ms.api.RecoverableException: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure '' found in document', probably configuration error in file adapter (XML parser error)': java.lang.Exception: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure '' found in document', probably configuration error in file adapter (XML parser error)'
Friend, how to convert this when source XML is empty.
But, if we remove JobTrack node in target strucutre and remove the JobTrack parameters in CC, then if we send the same empty XML file FCC is working fine and we get the target text file 0 KB. (Amazing !!)
But, in the first case, how to solve the issue?
Kind Regards,
Jegathees P.Hi friends,
If we remove JobTrack node in target strucutre and remove the JobTrack parameters in CC, then if we send the <b>same empty XML file</b> FCC is working fine and<b> we get the target text file 0 KB</b>. (Amazing !!)
But, if we give parameters like JobCode,JobTrack then send pass the same empty file, we face the problem 'File Content Conversion' Error.
Searching solution for this problem ... -
Define attributes in Sender File Content Conversion
Hello everybody,
I have the following issue:
I have the next flat file:
0001;159;2008-04-03;Customer_2008-04-03.xml
0001;953;0;1;0
0002;2907;0;1;0
And I have to convert it to the next XML structure:
<DocumentsBatch id="0001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<BatchInfo>
<SumDocumenten>159</SumDocumenten>
<date>2008-04-03</date>
<name>Customer_2008-04-03.xml></name>
</BatchInfo>
<Document id="0001">
<Customer>953</Customer>
<Portnumber>0</Portnumber>
<denied>1</denied>
<Port>0</Port>
</Document>
<Document id="0002">
<Customer>2907</Customer>
<Portnumber>0</Portnumber>
<denied>1</denied>
<Port>0</Port>
</Document>
My question is: Is it possible to define an attribute (e.g. id="0001" in <Document id="0001">) in File Content Conversion? If so, how can I do that?
Your answers will be rewarded with points.
Kind regards,
KamranHi Kamran,
its not possible to define attribute in File Content conversion.Instead u can create one more field "id" under the segments DocumentsBatch, Document etc.
Thanks
Ritu -
File Adapter - File Content Conversion to XML last element missing
I'm using the SAP File Adapter with File Content Conversion to convert | (pipe) delimited records into XML.
When the last field is blank, I would expect that an empty node gets created, however, the node doesn't get created at all.
For example given these settings...
Record.fieldSeparator = |
Record.endSeparator = 'nl'
Record.fieldNames = FIELD1,FIELD2,FIELD3
Using this three record file as my data...
|123|XYZ
ABC||XYZ
ABC|123|
When converted to XML, this is what the recordset XML structure looks like...
<Recordset>
<Record>
<FIELD1 />
<FIELD2>123</FIELD2>
<FIELD3>XYZ</FIELD3>
</Record>
<Record>
<FIELD1>ABC</FIELD1>
<FIELD2 />
<FIELD3>XYZ</FIELD3>
</Record>
<Record>
<FIELD1>ABC</FIELD1>
<FIELD2>123</FIELD2>
</Record>
</Recordset>
Notice that the last record is missing the "FIELD3" element.
Edited by: William Krick on Jun 17, 2011 4:49 PMGiuseppe Agnello wrote:
> Sorry, there was a typo in the parameter name.
> Word fields should start with capital F.
> Try with Record.missingLastFields, with value "add"
>
> http://help.sap.com/saphelp_nw70/helpdata/en/ae/d03341771b4c0de10000000a1550b0/frameset.htm
>
> Similar issue was resolved with same parameter in this thread:
> Sender file adapter with FCC not creating last field
That did the trick. It was a typo. Thanks Giuseppe.
I'm willing to bet that this parameter was added to fix the parsing bug without breaking existing users that had already worked around the original bug. You shouldn't really have to special case the last field.
Maybe you are looking for
-
Questions on getting "other" data off ipad
I have been reading the threads, but before I do a full restore I have a few questions. I have about 2GB of "other" space on my 8GB ipad 2 (OS 7 withou the latest patch). I need to get rid of it because I can't load the new OS and I have the ipad dow
-
Where can I buy a replacement DVD drive for a mac mini A1347
My mac mini is out of warranty and my toddler stuffed several discs into the drive slot. Whenever it booted, it made a horrible ratcheting clicking noise, but couldn't eject anything. I disassembled the entire computer, and pulled all 3 discs out wit
-
[b]Superscript font name in Reports 6[/b]
Hi forum, Suggest me to find a appropriate font name for the superscripts (Like SM service mark) in Reports 6.o Thanks for your help Natarajan
-
TS3276 How do I cancel an operation in iCloud mail once it has begun?
I have sent an email in icloud mail with too large an attachment. As a result in Account info under quota limits, "[icloud] is calculating sizes" and has been doing so for several hours. Nothing, including restarting my iMac can stop the little circl
-
A Unix Utility (or Scripting) to Do Major Read-Write-Seek Testing on a HD?
I'm wondering if there is a utility in Darwin -- or a (reliable, safe, free) Unix utility I can download -- that will do extensive read-write-seek testing on a hard drive? Or if not, could I use some kind of scripting commands in Terminal to do somet