EDI의 거래 유형 (850 = 위해서는, 875 = 식료품 포) 정말 중요하지 않습니다. 몇 가지 edi 파서를 작성한 후 여기에 내가 찾은 몇 가지가 있습니다.
ISA (및 ISA 전용)는 고정 폭 (메모리가 작동하는 경우 105 자)으로 계산할 수 있어야합니다. 처음 105자를 제거합니다. 그 이후와 "GS"의 첫 번째 발생 전에는 줄 종결자가됩니다 (이것은 아무 것도 될 수 있습니다. 0x07을 포함하십시오 - 경고음 - 디버깅을 위해 stdout으로 출력하는지 조심하십시오) 또는 여러 번의 경고음이 올 수 있습니다 스피커 밖으로). 일반적으로 이것은 1 또는 2 자이며 때로는 더 많은 데이터가 될 수 있습니다 (데이터를 보내는 사람이 어떤 이유로 든 추가 터미네이터를 추가하는 경우). 일단 라인 종결자가 있으면 세그먼트 (필드) 구분 기호를 얻을 수 있습니다. 나는 일반적으로 GS 라인의 3 문자를 가져 와서 사용하지만 ISA 라인의 네 번째 문자도 잘 작동해야한다.
또한 당신이 그것을 여러 ISA 년대의 파일을 얻을 수 있음을 유의하십시오. 이 경우 당신은 수 없습니다 각 ISA 내에서 동일한 줄 또는 필드 구분 기호에 대한 개수.
또 다른 한가지는 .. 그것은 EDI 파일의 가변 길이 ISA를 가지고 (그 스펙이 있는지 확실하지 않습니다, 다시)도 가능하다. 이것은 매우 드물지만 그것을 수용해야했습니다. 그런 일이 생기면 선을 필드로 파싱해야합니다. ISA의 마지막 필드는 문자 길이가 길기 때문에 ISA의 실제 길이를 결정할 수 있습니다. 그것이 나라면, 당신이 그와 같은 파일을 보지 않는 한 나는 이것에 대해 걱정하지 않을 것입니다. 희소 한 출현이다.
내가 위에서 말한 내가 확실하지 않다, 즉 ...은 "사양"의 문자를하지 않을 수는 다른 라인 같은 파일에서 분리,하지만 서로 다른 ISA들에이 합법적 있지만, 그것은 기술적으로 가능하며 나는 그 방식으로 통과하는 파일을 처리해야하기 때문에 그것을 수용합니다. Edi 프로세서는 3000 개가 넘는 데이터 소스로 하루에 5000 개 이상의 파일을 처리합니다 (그래서 이상한 물건이 많이 보입니다).
안부, 돈
2010 년 EDI는 무엇입니까? 나는 XML이 조금 더 사용하기 쉽다고 생각했다. –
수익의 90 %가 EDI에서 나오고있다. Walmart, Target, Toys R Us 및 기타 대형 소매 업체가 그 중 50 %를 차지합니다. 우리는 EDI를 좋아하기 때문에 EDI를 사용하지 않습니다. 고객이하기 때문에 EDI를 사용합니다. 이러한 대형 소매 업체가 다른 형식으로 변경하는 데는 시간당/비용이 들지 않습니다. 왜냐하면 작동하기 때문입니다. – Brandon
제가 매출의 90 %를 말할 때, 저는 회사의 매출의 90 %를 의미한다고 이해했기를 바랍니다. – Brandon