C# EdiFabric Экспорт файлов EDI 835

Я пытаюсь экспортировать EDI 835, используя ediFbaric 7.07 с файлами классов 5010.

Однако сегмент ISA всегда записывает ">" для сегмента ISA16:

return new S_ISA
{
  // Authorization Information Qualifier
  D_744_1 = "00",
  ...                    
  // Component Element Separator
  D_701_16 = ":"
};

`

Вывод всегда выглядит так:ISA*00* *00* *ZZ*InsurerId*ZZ*ProviderId*170120*2049*^*00501*111111111*0*P*>~

Оскорбительный символ является последним элементом, который имеет значение ">" вместо ожидаемого ":".

1 ответ

Решение

Разделитель элементов компонента берется из набора разделителей, который вы использовали для создания сообщения. Если вы еще не использовали его, он загружает значение по умолчанию для X12, а это, как вы уже догадались, ">".

Установка его в сообщении отбрасывается с целью отсутствия другого разделителя там и в наборе разделителей.

Чтобы обойти этот вызов, GenerateEdi с новым разделителем, установленным следующим образом:

var defaultSeparators = Separators.DefaultX12();
var newSeparators = new Separators(defaultSeparators.Segment,
                '>', 
                defaultSeparators.DataElement, 
                defaultSeparators.RepetitionDataElement, 
                null);
var ediSegments = interchange.GenerateEdi(newSeparators);
Другие вопросы по тегам