Inline Parser
Model C1D0U484 64bit
Model C1D0N484 32bit
Standard License
Copyright (c)1992-2017 Com1 Software Development
Com1 Software, Inc.
P.O. Box 482
Hudson, Ohio 44236
(330) 653-3771
Website: http://com1software.com
Support: http://com1software.com/support/
Email: information@com1software.com
IMPORTANT NOTICE
This computer program is protected by copyright law and
international treaties. Any unauthorized reproduction or
distribution of this program or any portion of it may result
in severe civil or criminal penalties, and will be prosecuted
under the maximum extent possible under the law.
This program and all support programs and documents are
provided "AS IS" without warranty of any kind, either
expressed or implied, including and not limited to the
implied warranties of merchantability and fitness for a
particular purpose.
In no event shall Com1 Software, Inc. or Com1 Software
Development be liable for any damages arising out of the
use or inability to use this program, support programs or
documentation. All prices and other information is subject
to change without notice.
This program and support documents are for trial and
demonstration purposes. Any other use is strictly prohibited.
BASIC CONCEPT
The X12 Inline Parser allows a user to convert
X12 files into a CSV or XML files.
The X12 Inline Parser can be run from a command prompt
using parameters to specify format,input file,
output file, and options.
The X12 Inline Parser can parse all the x12 files in a
specified folder with a single execution.
The view function allows you to display and print
the contents of standard ANSI X12 837,277,276,835,864,
and 997 files in a user friendly format.
837 Health Care Claims
276 Claim Status Inquiry
277 Claim Status
835 Remittance Advice
997 Functional Acknowledgement
864 Informational Report
Data is displayed in context sensitive screens relative
to their transaction set.
FEATURES
- Ability to call and run the Parser from another
application without user intervention.
- Create CSV or XML
- Designed for parsing large files.
- View or Print Listings of Claims
- View or Print Data Sheet of Individual Claims
- View or Print Listings of Remittance
- View or Print Data Sheet of Remittance
- View or Print Functional Acknowledgements
- View or Print X12 Data in segmented lines
SYSTEM SPECIFICATIONS
Requires a Microsoft Windows Operating System.
Default mapping for the Inline Parser can be stored in a file
called c1map.cfg.
Maps for the Inline Parser can be generated using the Mapping Tool.
The mapping tool lets you generate a map based on the type of
X12 transaction that you wish to parse. Map file names are based
on the version and transaction specification and example of this
is the file 004010X098A1.cfg that is used when a file is detected
to be a 837 Professional Claims version 4010A1. X12 File determination
is done using the GS segment Element 8. If a map is not found for
that version the c1map.cfg will be used.
- - -
KEYHEADERFIELD
Syntax : KEYHEADERFIELD=segmet,element1,element2,element3,ect...
The KEYHEADERFIELD is mapped to a segment that is used to determine
the separation for header data within the batch.
- - -
KEYFIELD
Syntax : KEYFIELD=segmet,element1,element2,element3,ect...
The KEYFIELD is mapped to a segment that is used to determine
the separation for each transaction within the file.
- - -
KEYDOCFIELD
Syntax : KEYDOCFIELD=segmet,element1,element2,element3,ect...
The KEYDOCFIELD is mapped to a segment that is used to determine
the separation for each document within a transaction.
- - -
KEYLINEFIELD
Syntax : KEYLINEFIELD=segmet,element1,element2,element3,ect...
The KEYLINEFIELD is mapped to a segment that is used to determine
the separation for each service line with a transaction.
- - -
FIELD
Syntax FIELD=a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s
A =Field Name
Any Alpha/Numeric value. No duplicates.
B =Field Width
1 - 999
C = Segment Type
Based on the 1st Segment
D = Segment Qualifier
E = Qualifier Position
Position includes all segments.
F = Element Position
Position does not include 1st segment.
G = Sub Element Position
H = Conditional Field
The name of another field within the map
that must be populated for this field to
work.
I = Occurrence
The identified record in a repeating segment.
J = Level
Blank = Default
1 = Header
2 = Document
3 = Line
4 = Trailer
5 = Source File Name
6 = Destination File Name
K = Service Line Number
L = Field Description
M = Data Starting Position within theField
N = Length of data
O = Function
Name of file that contains functional script
P = Previous Segment
Checks an 8 segment buffer for a valid segment and
qualifier.
Q = Previous Segment Qualifier
R = Previous Segment Qualifier Position
S = Toggle Off Field
Turns off field population if this field is populated
The FIELD is used to map all data that is to be parsed.
- - -
SEGMENT
Syntax SEGMENT=a,b,c,d,e - z
A = Level
1 - Header
2 - Invoice / Claim
3 - Line
4 - Trailer
B = Segment
: - Qualifier Separator
Example : SEGMENT=2,HI:$OCCURRENCECODE01,%BH;$OCCURRENCECODE01;D8;$OCCURRENCEDATE01
Note : If $OCCURRENCECODE01 in HI:$OCCURRENCECODE01 is not populated the segment
will be dropped.
C - Z = Segment Data
$ - Returns data for $filedname
Example : $CLAIMID
& - Returns counter for internal counter &counter
Example : &HL1
% - Starts use for subvalue within an element.
Example : %BH;$OCCURRENCECODE01;D8;$OCCURRENCEDATE01
; - Subvalue separator
Examples:
SEGMENT=1,NM1,85,$BILLINGPROVIDERNAME
SEGMENT=2,HI:$OCCURRENCECODE01,%BH;$OCCURRENCECODE01;D8;$OCCURRENCEDATE01
SEGMENT=3,SV2,$IREVCODE,%HC;$IPROC,$IUNITS,UN,$IQTY
- - -
SCREEN
Syntax SCREEN=a,b,c,d,e,f
A =Screen Number
B =Type
- TITLE
C = Screen Type
1=Record Listing
2=Record Detail
3=Line Item Listing
4=Line Item Detail
- BUTTON
C = SCREEN TO Go TO
- FIELD
C = Field Name
D = Field Description
E = New Line Control
0=No New Line
1=Create New Line after the field
F = Field Type
1=Line Item
The Inline Parser can be run in two ways, either in the screen interface
mode or using a command line call.
Before you can parse a file you will need to generate a mapping file
using the Inline Parser Mapping Tool or use one of the maps provided
in the examples.
USER INTERFACE SCREEN
To Parse a file using the Inline Parser screens click on the Parse X12
File Button.
In the Inline Parser interface screen select your IO type,
source file options are X12, CSV, or XML.
If you select X12 as your source type you will have the option of
selecting a destination file type of CSV or XML.
If you select CSV or XML as your source type, X12 will be set as your
destination type.
Select your Source File, set your destination folder and select or set any
options that you would like.
Click Begin and you file will begin parsing.
A destination file with the same name as the source should be created in
the destination folder.
The PARSE.LOG can be viewed to verify and troubleshoot the results of the
process.
COMMAND LINE INTERFACE
To parse a file using the command line interface use the following
syntax:
To run the Inline X12 Parser from a Command Line:
Syntax: C1D0U484
NOTE : There are four separate parameters being passed to the parser.
- Parameteres are separated by a space.
- I/O Types are separated by a comma.
- Options in the option string are separated by a comma.
1) The I/O Type.
Valid options are:
X12,CSV for X12 to CSV
X12,XML for X12 to XML
CSV,X12 for CSV to X12
XML,X12 for XML to X12
2) The Source.
The second parameter is the source file or source directory.
If a directory is specified, all valid files in that directory will be
parsed.
3) The Destination.
The third paramter is the destination file or destination folder.
If a file is not specified or if a source is a folder the parser will
name the destination file based on the source file name.
4) The Option String.
The fourth parameter is the options. Options are separated commas.
GETTING STARTED
One easy way to get started with the Inline Parser is
to use a pre-built maps available through the
Inline Parser Examples.
From the Functions dropdown menu, select Inline Parser
Examples. There will be the option to download a list of
available examples. Select and download the example you
are interested in. After the download it will be displayed
in your local examples list.
Select one of your local examples to load the user interface
to the Inline Parser with the example you have selected.
Click begin to start the Inline Parser. I will ask if you
want to have Headers on.
HINT : If you are interested in creating a CSV file that will be used
to create a ne X12 file, you may not want to include headers.
After the file has been parsed you will be asked if you would
like to view it.
You are next asked if you would like to create an X12 file from the
CSV file that you have just created. If you say yes, you will
load the user interface to the Inline Parser. Click Begin and
it will create a new X12 file from your CSV file. Once complete
you will be asked if you wish to view it.
X12 to CSV
To convert X12 to CSV from the inerface screen:
- Set the I/O type to X12,CSV
- Select your source file or folder.
- Set your destination directory.
- Set your options string.
Example : ow,ho,outfile=\qa\qat2\output.csv,map=\qa\qat2\qat2a.cfg
HINT: We have set our specific output file and map using the
options. This the helps guarantee which map is being used and
the name of the output file and its location.
To convert X12 to CSV from a command line:
c1d0u484 X12,CSV \test\src.x12 \test ow,ho,outfile=\test\out.csv,map=\test\map.cfg
CSV to X12
To convert CSV to X12 from the inerface screen:
- Set the I/O type to CSV,X12
- Select your source file or folder.
- Set your destination directory.
- Set your options string.
Example : ow,ho,outfile=\qa\qat2\output.x12,map=\qa\qat2\qat2a.cfg
HINT: We have set our specific output file and map using the
options. This the helps guarantee which map is being used and
the name of the output file and its location.
IMPORTANT: To get started we suggest you create your first CSV file from
an X12 file so that your columns within the cSV match the mapping.
To convert CSV to X12 from a command line:
c1d0u484 CSV,X12 \test\src.csv \test ow,outfile=\test\out.x12,map=\test\map.cfg
TROUBLESHOOTING
The options of ML,DEBUG=ON can be used to create a MAP.LOG and add
debug information to the PARSE.LOG.
The Inline Parser first loads its map into memory based on the
version of X12 it sees in segment GS08.
Valid detected versions and transactions:
Version 4010
837I 004010X096A1.cfg
835 004010X091A1.cfg
276 004010X093A1A.cfg
277 004010X093A1B.cfg
270 004010X092A1A.cfg
271 004010X092A1B.cfg
278 Request 004010X094A1A.cfg
278 Response 004010X094A1B.cfg
834 004010X095A1.cfg
837p 004010X098A1.cfg
837d 004010X097A1.cfg
version 5010
837i 005010X223A2.cfg
835 005010X221.cfg
276 005010X212A.cfg
277 005010X212B.cfg
270 005010X279A.cfg
271 005010X279B.cfg
278 Request 005010X217A.cfg
278 Response 005010X217B.cfg
834 005010X220.cfg
837p 005010X222A2.cfg
837d 005010X224A2.cfg
If you encouter a file that did not parse, verify
the the version of X12 in the GS08 using the X12 Viewer
in the View Data screen.
An example of an issue would be an 837I file that contains
005010X223 in the GS08. Since the there has been a
second addendum added to the 5010 X12 specification
we use 005010X223A2 as the valid name
for a 837i version 5010 mapping configuration.
To get around this problem simply save the 005010X223A2.cfg
file as 005010X223.cfg
The following is a list of options available for use with the Inline Parser.
Options are specified in the options parameter and are separated by commas.
OW - Overwrite the destination file.
RPMN - Rename with Prefix Map Name.
MAPLOG - Turn Map Log ON.
HO - Header ON (X12,CSV) only.
DS - Delete Source File.
ERR - Error Files set to Yes.
DEBUG - Turns on DEBUG
DEFAULTMAPPATH= - Path to locate the default c1map.cfg
MAPPATH= - Path to find primary maps.
MAP= - Specify a specific map to use.
PARSELOG= - Set the parse log file name.
SO - Display Screens OFF
CE - Convert destination file extension to CSV or XML
RE - Retain File Extension.
OUTFILE= Destination File Name
MF - Merge into single output file.
SL - The Single-Line mapping option will process each service line as
a single record. This option is used when service lines are
mapped in the map.cfg. An example is a map that was created for
10 service lines. Each service line will create a complete CSV
or XML record that contains claim level data.
ML - The Multi-Line dynamic service line mapping option uses a map with a
single service line. As the parser parses a claim it determines
the number of service lines within the claim and parses a single
complete CSV or XML record for each service line.