Giter Site home page Giter Site logo

x12parser's People

Contributors

cybernescens avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

x12parser's Issues

Importing into the database but..

When importing the x12 (837 for example) into the database is there the ability to export and recreate the x12 that was imported?

Thanks!

Denisse

Segment 'NM1*QD*1*CLAY*MARTONN*C' in segment position 26 within transaction '681560001' cannot be identified within the supplied specification for transaction set 837 in any of the expected loops: 2000A[1],2000B[2],2010BB. To change this to a warning, pass throwExceptionOnSyntaxErrors = false to the X12Parser constructor. Parameter name: 837

Hello,
When i am using OopFactory.X12.UnbundleX12, i am getting an error in Segment 'NM1QD1CLAYDEQUINTON*C' in segment position 26 within transaction '681560001' cannot be identified within the supplied specification for transaction set 837 in any of the expected loops: 2000A[1],2000B[2],2010BB. To change this to a warning, pass throwExceptionOnSyntaxErrors = false to the X12Parser constructor. Parameter name: 837 in X12Parser.cs.

can anyone advice this how to resolve this issue.

837P Specification Does Not Include PER Segment For Loop 2010CA

The 837P specification for Loop 2010CA is as follows:

  <HierarchicalLoop LoopId="2000C" Usage="Situational" LevelCode="23">
    <Name>PATIENT HIERARCHICAL LOOP</Name>
    <Segment SegmentId="PAT" Usage="Required" Repeat="1"/>
    <Loop LoopId="2010CA" Usage="Required" LoopRepeat="1">
      <Name>PATIENT NAME</Name>
      <StartingSegment SegmentId="NM1" Usage="Required" Repeat="1">
        <EntityIdentifier Code="QC"/>
      </StartingSegment>
      <Segment SegmentId="N3" Usage="Situational" Repeat="1"/>
      <Segment SegmentId="N4" Usage="Situational" Repeat="1"/>
      <Segment SegmentId="DMG" Usage="Situational" Repeat="1"/>
      <Segment SegmentId="REF" Usage="Situational" Repeat="4"/>
      <Segment SegmentId="REF" Usage="Situational" Repeat="1"/>
    </Loop>

That specification does not support the PER segment as documented on page 157 of the 837P spec dated June 2014. Is there a reason for this omission?

Available as Nuget package?

Is this version mature enough to be made available as an option within Nuget?

I stumbled upon it when looking for something to replace OOPFactory.X12 that is directly supported by .NET Core 2.2 and higher. We have been using the OOPFactory libraries for many years with .NET 4.x, but are moving toward .NET Core and want a natively compatible solution for our X12 HIPAA parsing needs!

Thanks!
Jeff

Link segment by loop and parent loop ID in SQL Server ?

Hello,

The parser works like a charm and I am able to load 835\837 into SQL Server.

I like to share a SQL script that can create a loop path.

Do you think I can use LoopId and ParentLoopId to link segments table, such as link SLP to CAS, and other?
I like find related records for each payments and service lines.

--*************************************************
-- Loop recursive on loopID and ParentLoopId

WITH CTE
AS (
-- This is end of the recursion: Select items with no parent
SELECT [InterchangeId],
[Id] AS LoopId,
[ParentLoopId],
CAST(Id AS VARCHAR(MAX)) AS LoopPath
FROM [dbo].[Loop] AS t
WHERE ParentLoopId IS NULL
UNION ALL
-- This is the recursive part: It joins to CTE
SELECT t.InterchangeId,
t.Id AS LoopId,
t.ParentLoopId,
c.LoopPath + '/' + CAST(t.Id AS VARCHAR(MAX))
FROM [dbo].[Loop] AS t
INNER JOIN CTE AS c ON t.ParentLoopId = c.LoopId)
SELECT *
FROM CTE;

image

Adding DMG Segment to NM1 Returns NULL

I am trying to add a DMG segment to a loop that starts with a NM1 segment. I have the following code:

var hierarchicalLoop3 = outerTransaction.AddHLoop("3", "20", false);
var subscriberName = hierarchicalLoop3.AddLoop(new TypedLoopNM1("2100C"));
// snip
var dmgSegment = subscriberName.AddSegment<TypedSegmentDMG>(new TypedSegmentDMG());

The dmgSegment object comes back as null. I have also tried var dmgSegment = AddSegment("DMG") but I get the same null result.

856 conversion error

I am trying to convert an 856 (see attached 856 86K.txt) to XML and am getting the following error:

856 Transaction does not expect HL03 level code value AG that appears in transaction control number 1031.
Parameter name: 856

I tried to set throwExceptionOnSyntaxErrors to true and false and neither let's me to create the XML.

NOTE: I have also attempted to convert another 856 (see 856 sample.txt
856 sample.txt
856 x12.txt
856 86K.txt
) and it throws the following error:

Heierchical Loop HL*2**I cannot be added to transaction set 109909 because it's specification cannot be identified.

However, if I try to convert 856 x12.txt it converts without any issues.

Can you tell me if I am doing something wrong or if you can tell what is wrong with my data?

EDI Claim 837 Mandatory Feild Details

Hello guys i am working on ediclaim837 i need some help with you guys
I have Some Doubts in filling Some values to Loop Segments and also please tell me from where i get this values and also tell me that which are the mandatory fields....

1.) Submitter Loop or Clearing House =====>Submitter Name,Submitter Id
2.) Receiver Loop or Insurance Company=====>Reciever Name,Receiver Id,
3.) Billing Provider =====>Billing Provider Id,Name,Address,Zip,ContactNumber,Billing Provider Tax Identification
4.) Claim Information =====>Claim identification Number,Patient Control Number,Total Amount Charge,Facility Code Qualifier,Frequency Type Code , Provider Signature Indicator,Provider Accept Assignment,Provider Benefits Assignment Certification(Yes for Valid Signature on File/No for No Valid Signature on File),Client Signature Source Code,Reference Identifier Code Qualifier,Reference ReferenceId,HealthCare Code Information,Health Care Diagnosis Code.
5.) Rendering Provider Loop ======>Rendering Provider Name,Identifier Code,Provider Taxonomy Code,Secondary Indentification Reference ID.
6.) Subscriber Loop ======>Patient Account Number,Policy/Group Number,Plan/Program,Medicare Secondary Payer(MSP) code,Member ID(Identification Code)

.NET Standard 2.0 compliant?

Hi!

We've been using this successfully in our app for several years, but we are now upgrading to .NET Core 5.

As such, we will need a .NET Standard 2.0 compliant version of this library.

I tried to simply take the existing code and put it into a new .NET Standard 2.0 compliant class library, but found that code such as:

Assembly.GetExecutingAssembly().GetManifestResourceStream(String.Format("OopFactory.X12.Specifications.Ansi-{0}-4010Specification.xml", transactionSetCode))

now returns null (where otherwise doesn't).

Are you looking to upgrade this to being .NET Standard 2.0 compliant in the near future? If not, do you believe this to be straightforward to make compliant?

Thanks for your time,
Brian

Error Parsing Certain 837 Claims

This error appears to occur for some 837 institutional claims. The CAS segment noted in the error appears to be formatted correctly.

An exception of type 'OopFactory.X12.Parsing.Model.TransactionValidationException' occurred in OopFactory.X12.dll but was not handled in user code
Segment 'CASOA23*179.88' in segment position 99 within transaction '000000023' cannot be identified within the supplied specification for transaction set 837 in any of the expected loops: 2000A[1],2000B[2],2300,2400. To change this to a warning, pass throwExceptionOnSyntaxErrors = false to the X12Parser constructor.

FileLoadException

System.IO.FileLoadException: 'Could not load file or assembly 'OopFactory.X12, Version=2.1.7.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. A strongly-named assembly is required. (Exception from HRESULT: 0x80131044)'

This happens after changing to 64bit, any assistance would be appreciated

All Exception Errors cause Crash

I'm thinking about implementing this wonderful X12 parsing tool. It seems to handle errors correctly, and display correct error message, but it also crashes at the very end.

For example: Running X12Parser.exe nonexistingfile.edi
Will show correct error: File Not Found. But will also cause the OS to display the generic Windows OopFactory.X12.X12Parser has stopped working - Windows is checking for a solution....
untitled

This error cause the script to lock and cannot bypass it, because Windows thinks the program has actually crashed.

Parse X12 835 and other documents?

I have been using version 3.0.8 of OopFactory.X12.HIPAA from Nuget to parse X12 271 Eligibility responses. There are one or two issues (missing codes) that I can work around - but otherwise it works well and is reliable, thread-safe, etc.

I see that it has the ability to parse X12 claim files (837's and maybe 277's) in addition to eligibility. I have other methods in use to do that work - for now.

I am embarking on a project for which I need a tool to parse and/or create X12 835's (Payment/Remittance Advice). I do not see that any of the flavors of this project available to download in Nuget (The "X12" series of packages, X12ParserCore, etc.) handle an X12 835 other than as a generic X12 document that can be broken down into segments. I need what this packages does for 271 Eligibility Responses - creation of custom classes based on the structure of the 835 standard as defined by 005010X221A1.

Is anyone aware of a branch of this project that can handle an X12 835 out-of-the-box? At some point, I will want/need the capability to parse and/or create all of the X12 HIPAA standards. I know that Eligibility parsing I am used to using can be replicated to other document types by the creation of an XML interpreter file as well as all of the OOP classes to represent all of the loops and segments. But someone needs to create all of that infrastructure for each document type.

I feel it is a far more efficient use of my employer's resources to use something that already does the dirty work and allows me to focus on the contents of the document rather than parsing or creating the structure of the documents. Does anyone know of a child or sibling of this project in which the other X12 HIPAA document types have been implemented? I would prefer to use something that directly supports .NET Standard 2.0 or greater, but would "settle" for something in the .NET 4.x family. That's what v3.0.8 is!

Thanks in advance!

EligibilityTransformationService throws exceptions during parsing of responses

We need the ability to turn off the X12Parser exceptions when creating an instance of the EligibilityTransformationService. Currently it keeps throwing an exception that the "ISA" line must have exactly 106 chars (IT DOES only have 106 chars but still throws this error). I don't understand WHY you would want to validate an incoming file you are trying to parse anyway, as we all know that almost no one conforms to the standards.
Anyway, I will reverse engineer the transformation code for now, but all Transforms need to be able to be passed in an existing instance of an X12Parser so we can set other options on them.

Edi Claim 837 Required Field

Can You Guys tell me how can i test my edi claim 837

My output is

ISA00 01SECRET ZZSUBMITTERS.ID ZZRECEIVERS.ID 0301011253*^005010000009051T*:~
GSHCSENDER CODERECEIVER CODE1999123108021X005010X222~
ST8370021005010X222~
BHT
001900244579200610151023CH~
NM1
412PREMIER BILLING SERVICE46TGJ23~
PER
ICJERRYTE3055552222EX231~
NM1
402KEY INSURANCE COMPANY
4666783JJT~
HL
1201~
PRV
BIPXC203BF0100Y~
NM1852*BEN KILDARE SERVICE
XX9876543210~
N3
234 SEAWAY ST~
N4MIAMIFL33111~
REF
EI587654321~
HL
21221~
SBR
P
2222-SJ
CI~
NM1
IL
1
PANDEY
SMITA
MIJS00111223333~
N3
236 N MAIN ST~
N4
MIAMIFL33413~
DMGD819880110F~
NM1
PR2KEY INSURANCE COMPANYPI999996666~
REF
G2KA6663~
HL
32230~
PAT
19~
NM1QC1PANDEYSMITA~
N3236 N MAIN ST~
N4
MIAMIFL33413~
DMGD819880110M~
CLM
2646377410021:B:1YAYI~
DTP454DB20061003~
REF
D917312345600006351~
HI
BK:0340BF:V7389~
LX
1~
SV1HC:9921340UN1
1~
DTP472D820061003~
LX
2~
SV1HC:9921340UN11~
DTP
472
D8
20061003~
LX3~
SV1
HC:9921340UN11~
DTP
472
D820061003~
LX
4~
SV1HC:9921340UN11~
DTP
472
D8
20061003~
SE420021~
GE11~
IEA1000000905~

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.