File Sender / Separating a variable number of data blocks
Hi all,
I have a problem regarding the content conversion in a file sender adapter.
The source data has a fixed length of 10 chars, but is contained in one big line without any newlines or other sepators.
Example source data:
0123456789012345678901234567890123456789
The number of occurences can vary; that is the next file might contain more or less data blocks of 10 chars each.
Another example:
01234567890123456789
Is it possible to create a content conversion that handles this kind of data? We have already tried several configurations (for example using "fieldFixedLengths = 10") but didn't succeed. In most cases only the first data block is read an the rest is ignored. Therefore it seems to me that the adapter requires a newline in order to recognise data blocks.
The target xml structure should look like:
<Structure>
<Line>0123456789</Line>
<Line>0123456789</Line>
</Structure>
Do you have some hints on this one?
Thanks and regards,
lars
Hi Satish,
hello Ravi,
thanks for your replies.
If I understand it right, you would need two message mappings in order for this solution to work, resulting in the following steps:
- Read File into one big record using content conversion.
- Perform the first message mapping, splitting the content using the UDF.
- Perform the second message mapping, containing the "business-mapping".
Is this correct or is there a way to achive this in one single message mapping?
Thx,
lars
Similar Messages
-
Variable number of data sets in multiplot
I would like to be able to overlay sets of spectra to compare intensity variations. I am familiar with the multiplot usage, but my question involves how to allow a variable number of data sets to be overlayed. I have a vi that plots a spectrum after the user presses a "load file" button. I would like to add a boolean that when true would continue to stack spectra on the existing plot, and when false would just plot an individual spectrum each time. How can I accomodate a variable number of data sets in the multiplot?
Assuming you're using the X-Y graph (the word "multiplot" means little to
me) then each dataset is a cluster of the X array and Y array for that
dataset. To put several datasets on the graph you make an array of these
clusters. This should be very clear in the context help for the X-Y plot
terminal.
To add spectra you simply append it to the array of spectra already in the
plot. The brute force and simplest to understand approach would be to use a
local to retrieve all the data that's currently in the plot as an array,
append the new plot to the end and write it all back to the plot, either to
its terminal or via another local. More elegant would be to buffer your
array of plots internally within the program and have an array of Booleans
allowing you to selectiv
ely show/hide plots, either by omitting datasets
when writing them to the graph or, to maintain consistency in plot styles,
writing an empty element to the array in place of hidden datasets, but if
this is meaningless to you then the first suggestion is perfectly adequate.
jeffrz wrote in message
news:101-50650000000800000050150000-982303670000@quiq.com...
> I would like to be able to overlay sets of spectra to compare
> intensity variations. I am familiar with the multiplot usage, but my
> question involves how to allow a variable number of data sets to be
> overlayed. I have a vi that plots a spectrum after the user presses a
> "load file" button. I would like to add a boolean that when true would
> continue to stack spectra on the existing plot, and when false would
> just plot an individual spectrum each time. How can I accomodate a
> variable number of data sets in the multiplot? -
How to create line hart with variable number of data series
Hello,
I am student and I am completely new to Flex programming but
I need to urgently create an app that should have a variable number
of data series but of ame type of object.
eg. Profits for X,Y and Z in in run while just corp X in the
next instance.
How can I accomodate for this in the app? can someone point
me in the right direction I would really greatful as this project
is really crucial for my coursework to get finished in timely
manner.
Thank youHey,
I'm not really sure what you want, but you should check out:
http://demo.quietlyscheming.com/ChartSampler/app.html
Which has a list of different types of charts in Flex and
will hopefully help. Also check out charting from ILOG, which is
quite good:
http://www.ilog.com/products/elixir/ -
number of data block
is there any limit for the number of datablocks in a form?
i have a form that has 8 blocks and all of them are none base,
some times when i use this form it suddenly closed and a special file (ifrun60_dump file)
is created.i donot know the reson and i cannot solve the problem
if you have any idea about this ,plz help me?
thanks in advance.
regards ,
shoja.Restriction on the number of objects is documented in the Help topic "Limits" - There is no practical limit to the number of blocks in a form. Certainly 8 is a timy number compared with mosdt forms.
Contact support and supply them with the dump file, that should help to identify the issue you have. -
How to reduce the number of data blocks used by table
Hi,
I was trying to reduce the space usage of a particular table of my apex application which stores blob content and therefore deleted many records from it.
However, the data block usage remained the same as before.
I have tried to 'analyze' the table and validate the structure,but am unable to overcome this problem.
Could someone throw some light on what needs to be to reduce the number of data blocks used by this table?
Best Regards,
Priya JetleyPriya:
It is likely that the BLOB content defined in your table is being stored 'Out-of-Line'. This means that the LOB columns are stored in segments of their own. These then are the segments that may need shrinking.
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14249/adlob_tables.htm#i1006363
Varad -
Data block corrupted on standby database (logical corruption)
Hi all,
we are getting the below error on our DRSITE,it is MANUAL PHYSCIAL STANDBY DATABSE...
The following error has occurred:
ORA-01578: ORACLE data block corrupted (file # 3, block # 3236947)
ORA-01110: data file 3: '/bkp/oradata/orcl_raw_cadata01'
ORA-26040: Data block was loaded using the NOLOGGING option
I have checked in the Primary database, that there are some object which are not being logged into the redo logfiles.....
SQL> select table_name,INDEX_NAME,logging from dba_indexes where logging='NO'
TABLE_NAME INDEX_NAME LOG
MENU_MENUS NUX_MENU_MENUS_01 NO
MENU_USER_MENUS MENU_USER_MENUS_X NO
OM_CITY IDM_OM_CITY_CITY_NAME NO
OM_EMPLOYER EMPLR_CODE_PK NO
OM_EMPLOYER IDM_EMPLR_EMPLR_NAME NOOM_STUDENT_HEAD OM_STUDENT_HEAD_HEAD_UK01 NO
OT_DAK_ENTRY_DETL DED_SYS_ID_PK NO
OT_DAK_ENTRY_HEAD DEH_SYS_ID_PK NO
OT_DAK_ENTRY_HEAD IDM_DEH_DT_APPL_REGION NO
OT_DAK_ENTRY_HEAD IDM_DEH_REGION_CODE NO
OT_DAK_REFUNDS_DETL DRD_SYS_ID_PK NO
TABLE_NAME INDEX_NAME LOG
OT_MEM_FEE_COL_DETL IDM_MFCD_MFCH_SYS_ID NO
OM_STUDENT_HEAD IDM_STUD_COURSE NO
13 rows selected.
so the main problem is in the OM_EMPOYER tables if i would delete the indexes from that table recreate it again with the logging clause,and then apply the archvied logs to the DRSITE.WILL THE problem will resolve.
Pls suggest me...Hi..
Firstly how did you confirm that it was that index only.Can you post the output of
SELECT tablespace_name, segment_type, owner, segment_name
FROM dba_extents WHERE file_id = 3 and 3236947 between block_id
AND block_id + blocks - 1;
This query can take time, if are sure that its the index don't fire this command .
Secondly, when you will drop and recreate the index, it will be logged into the redo logfile.This information will be be logged in to an the archivelog file as its the replica of the redo logfile. Then when you apply this archive log maually, it will drop that index and then recreate it using the same sql.
HTH
Anand -
How to handle flat file with variable delimiters in the file sender adapter
Hi friends,
I have some flat files in the ftp server and hope to poll them into XI, but before processing in XI, I hope to do some content conversion in the file sender adapter, according to the general solution, I just need to specify the field names, field seperator, end seperator, etc. But the questions is:
The fileds in the test data may have different amount of delimiters (,), for example:
ORD01,,,Z4XS,6100001746,,,,,2,1
OBJ01,,,,,,,,,,4,3
Some fileds only have 1 ',' as the delimiter, but some of them have multiple ','.
How can I handle it in the content conversion?
Regards,
BeanHi Bing,
Plz do refer the following blogs u will get an idea:
File content conversion Blogs
/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/arpit.seth/blog/2005/06/02/file-receiver-with-content-conversion
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
/people/shabarish.vijayakumar/blog/2005/08/17/nab-the-tab-file-adapter
/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/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/michal.krawczyk2/blog/2004/12/15/how-to-send-a-flat-file-with-fixed-lengths-to-xi-30-using-a-central-file-adapter
/people/arpit.seth/blog/2005/06/02/file-receiver-with-content-conversion
http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm
Regards,
Vinod. -
Sender FILE Adapater Content Conversion: Header and Item Data
Hi
I need to pick a file and do the content conversion. The XML structure which should be formed should be in the below format. I have a CSV file which needs to be converted.
Kindly suggest how can I maintain parameters for Header and Item level data in Recordset structure.
How can I specify in Recordset parameter which is Header(Customerno, Doc type and Address) and Item level(Line Item) data.
<?xml version="1.0" encoding="UTF-8" ?>
<customernumber></customernumber>
<documenttype></documenttype>
- <Address>
<name1></name1>
<name2></name2>
</Address>
- <LineItem>
<material>100016</material>
<amount>1000</amount>
</LineItem>Hi Swetank,
The file after conversion should have one Header and you can have any number of line items.
Once you choose File Content Conversion in the message protocol header while configuring the Sender File Adapter, you get the following enteries in the Content Conversion Parameters:
Document Name
Document Namespace
Document Offset
Recordset Name
Recordset Namespace
Recordset Structure
Recordsets per Message
Key Field Name
To maintain the Header information, Some entries are mandatory, i.e.
Recordset Name: Here please specify the name of the structure. It is included in the XML schema.
Recorset Structure: Here you need to enter the sequence and the number of substructures. Since Header is one but you can have many Line items, you will write:
customernumber,1,documenttype,1,Address,1,LineItem,*
this format is clearly explained in the link provided by Divya.
And in the Additional fields you need to write the name of fields corresponding to different Recorset Structures and also add some property to it, like fixed lengths, use some separators etc.
and Most important field is:
Key Field Name: If you specified a variable number of substructures for Recordset Structure, in other words, at least one substructure has the value *, then the substructures must be identified by the parser from their content. This means that 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.
Here you need to enter LineItem as it is the only Recordset Structure with an *.
I hope this solves your problem,
Thanks and Regards,
Varun Joshi -
File Sender, Content Conversion - how to define variable length last field?
XI 3.0 SP17
With a File Sender communication channel, that uses Content Conversion - how do I define a 'variable length' last field?
The scenario - the input file has four fields, of which the first three are a known fixed length, and the last (fourth, trailing) field is variable in length.
Using a Message Protocol of 'File Content Conversion', how do I define that last variable length field (field name 'WOData' below) in the Content Conversion Parameters section?
My current parameters are:
Recordset Structure - Row,*
ignoreRecordsetName - true
Row.fieldFixedLengths - 1,12,5,99999
Row.fieldNames - WOType,WONum,WOLine,WOData
I've tried the following for 'Row.fieldFixedLengths' to no avail -
'1,12,5,*'
'1,12,5,0'
'1,12,5,'
'1,12,5'
The last two were grasping at straws )
The only thing I've got to work is specifying a 'large' value for the final field (99999 above).
In addition, does anyone know if specifying a large value (e.g. 99999) for the final trailing field will give rise to performance issues when the file is being processed?
In the help for "Converting File Content in a Sender Adapter", it states -
<Begin Quote>
NameA.fieldFixedLengths
If you make a specification here, the system expects a character string that contains the lengths of the structure columns as arguments separated by commas.
If you also specify a separator for the columns, you must not add its length to the length of the columns.
This entry is mandatory if you have not made an entry for NameA.fieldSeparator.
<End Quote>
http://help.sap.com/saphelp_nw04/helpdata/en/2c/181077dd7d6b4ea6a8029b20bf7e55/content.htm<< note that fieldFixedLengths will not take any wildcard entries like *. So in these case it is ideal to provide a maximum char length. But note that while the file is being created that many spaces will be created in your file !!! >>
Hi Shabarish,
Yes, no wildcard is the conclusion I came to, hence my maximum )
The message size did not increase by any 'blank padding'. When I look in [Message Display Tool (Detail Display)] 'Audit Log for Message: X' -
2006-10-17 18:22:42 Success Channel X: Entire file content converted to XML format
2006-10-17 18:22:42 Success Send binary file "X" from FTP server "X", size 103290 bytes with QoS EO
2006-10-17 18:22:42 Success Application attempting to send an XI message asynchronously using connection AFW.
2006-10-17 18:22:42 Success Trying to put the message into the send queue.
2006-10-17 18:22:42 Success Message successfully put into the queue.
2006-10-17 18:22:42 Success The application sent the message asynchronously using connection AFW. Returning to application.
The input flat file in non-XML format was 92,132 bytes and the message payload into XI was 103,290 bytes.
My understanding is that trailing spaces are stripped from XML nodes. -
Upload data from Internal table to text file with '~' separator
can anyone help me to download data from internal table to flat file with '' separator. GUI_DOWNLOAD is not working in my case ....like for '' separator
Here it is
REPORT zkb_test1.
TYPE-POOLS: truxs.
DATA: i_scarr TYPE TABLE OF scarr,
i_conv_data TYPE truxs_t_text_data.
SELECT * FROM scarr INTO TABLE i_scarr.
CALL FUNCTION 'SAP_CONVERT_TO_TEX_FORMAT'
EXPORTING
i_field_seperator = '~'
TABLES
i_tab_sap_data = i_scarr
CHANGING
i_tab_converted_data = i_conv_data
EXCEPTIONS
conversion_failed = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL METHOD cl_gui_frontend_services=>gui_download
EXPORTING
filename = 'C:\Test1.txt'
filetype = 'ASC'
CHANGING
data_tab = i_conv_data
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6
header_not_allowed = 7
separator_not_allowed = 8
filesize_not_allowed = 9
header_too_long = 10
dp_error_create = 11
dp_error_send = 12
dp_error_write = 13
unknown_dp_error = 14
access_denied = 15
dp_out_of_memory = 16
disk_full = 17
dp_timeout = 18
file_not_found = 19
dataprovider_exception = 20
control_flush_error = 21
not_supported_by_gui = 22
error_no_gui = 23
OTHERS = 24.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
Regards
Kathirvel -
Convert Script output data to Text(.txt) file & send mail with attachment.
Hi All,
Requirement: I shulb be able to conver th Script output data to Text(.text) file & send a maill with attachment with this text file. Formant of text file should be like output of Print priview.
Plese sugget with Function modules to cover as Text file.
I am able to converting the Script output data to PDF and sending mail with attachment. So I don't want PDF file now.
Thanks in advance.Hi, Thanks for responst.
We can convert the Scirpt output to PDF file by using OTF function module and the PDF file looks like Print Privew output.
Same like this I want Script out in NOTEPAD (.txt). Is that possible, Plz sugget with relavent Function Modules.
Thanks. -
I need to copy the data files to a SAN and want to change the number of data files form 4 to 1. This is only a small database (22Gb). I don't know how to delete the data files and re create them.
Regards
HansHi Hans,
no, you can also do it using DBMGUI. The process is really the same as when you're doing a homogenous system copy, the only difference is the target itself is the same db instance.
You'd have to make sure you've backup up all (data+log) and no further data was created (for example by making a full data backup in ADMIN mode and saving the log). Then you'd need to initialize the DB and specify the desired number of (data) volumes and make sure you select the radio button labelled 'Create instance for recovery' during the initialization process, so the instance will only be put into ADMIN, after which you can then recover (using the backups made in the beginning).
I'd recommend to test this out yourself on a small (non production) db instance.
In comparison, from MaxDB version 7.6.00 Build 22 onwards, you would just have deleted the unwanted volumes (taking into respect that the left over volume can hold all data).
Regards,
Roland -
Number of data files per database!
Hello,
http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/limits002.htm#i287915
reads
>>
Database files
Maximum per tablespace Operating system dependent; usually 1022
Maximum per database 65533
May be less on some operating systems
Limited also by size of database blocks and by the DB_FILES initialization parameter for a particular instance
>>
I understand the DB_FILES part but how come number of files per database be limited by the database block size?
The maximum number of datafiles per database is 65533 as per above quote.
Could someone please explain this?
Regards,Niten
See the below link
URGENT! - Data Packet Size
Assign points if has really helped you.
Regs
Gopi -
Most elegant way to accept a variable number of files?
I am writing a program where I would like to accept a variable number of files to process. In my inexperience with LabVIEW I can think of several ways to do this, which aren't as user friendly as I'd like it to be.
I tried an array of file path controls. This will be the easiest to implement, but what I don't like is that you can't really see all the files you've inputted at once and if you select a file and want to erase it, it will query you for a file.
I tried a while loop with an empty file path to my Read Characters from File.vi, but I would like it so that the user can just specify which files they'd like to load without having to wait inbetween. Also, as I mentioned before, I would prefer it if the use
r could see which files they've decided to load and have the option of taking a file out if they should so choose.
I could try just fixing the number of files and have like 5 or so file path controls and do it like that. That seems like it would be clumsy and obviously has the problem of not being variable.
I'm just wondering if there is something that I haven't thought of, or if I have and which avenue would be the best. I feel fine about using an array of file path indicators, but wonder how I can remove indicies that are empty.Dan, use the special path constant called "Temporary Directory".
Another problem is the fact that you hardwire the path as a string ("c:\temp\...") instead of a path constant. This will make the code useless on any platform except windows.
LabVIEW Champion . Do more with less code and in less time . -
When I import a text file(comma separated) into a numbers spreadsheet all the data goes into one column instead of individual columns based on the comma separators. Excel allows you to do this during the import.. Is there a way to accomplish this in numbers without opening it in Excel and the importing into Numbers.
Your user info says iPad. This is the OS X Numbers forum. Assuming you are using OS X… Be sure the file is named with a .csv suffix.
(I don't have an iPad, so I don't know the iOS answer.)
Maybe you are looking for
-
Need new notebook for video editing
I've been shopping for a new notebook for my friend. He will be editing 50 p loaded from his Panasonic HC - X920, using Premier Pro. It must be a notebook, a desktop is not an option. I've narrowed it down to a particular Asus system here in Northern
-
BPM-Synch to Synch Interface Communication
Hello All - My scenario is Outbound Synchronous Interface (IfOut_Synch,from JMS Adapter))->BPM->Inbound Synchronous Ingterface(PO CHNAGE BAPI). In BPM, I want to have Receive->Transformation(Message Mapping to BAPI)->Send steps to achieve this scena
-
Changing HD from Macbook to Pro
I have a Macbook White and just bought a Macbook Pro. I changed my Momentus XT HD of the white to the new PRO. But now I'm trying to put the 320GB HD of the Pro into the white, but is saying that I can't install the Mac OS, only in time machine mode.
-
Vb6 ODBC - Syntax error or access violation in oracle 11g migration
Hi, We have VB6 application with Oracle 10g and the same is working fine. Now, we are migrating to Oracle 11g now and we have updated the odbc drivers too. { call M_FR(?, ?, ?, ?, ?, ?, ?, ?) } L_ID = 890083 V_ID = 1 SUB_ID = 6955141 SUB_SEQ = 1 P_CO
-
The icon for Read it Later is still there, but I cannot find the actual content any more since I switched to Firefox 4. Where is it?