首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将EDI/X12转换为EDI/X12 -只需更改分隔符

将EDI/X12转换为EDI/X12 -只需更改分隔符
EN

Stack Overflow用户
提问于 2021-02-11 06:27:33
回答 2查看 116关注 0票数 1

我想我遗漏了一些简单而明显的东西。但是,这给我带来了麻烦。

我在Centos上的Mirth 3.10.1上,SQL Server作为我的数据库。我使用文件读入站和文件写入站。

请温柔些。这是我的第一个也是非常简单的项目。

我想接收一个带有~ segment、| element和^ subelement分隔符的X12 835,并使用\n segment、* element和: subelement分隔符输出。难道我不应该只需要使用EDI设置源和目标,并只更改入站和出站属性吗?

My Source Connector setup

EN

回答 2

Stack Overflow用户

发布于 2021-02-13 04:26:01

所以。我找到了答案。

问题是,通道属性中Data Types对话框中的Source和Destination分隔符的值似乎不会改变输出中使用的分隔符。我尝试了所有的组合(我认为)推断,而不是推断,等等。没什么。输出时的分隔符与输入时的分隔符相同。然后我想..。嗯..。让我们看一下XML,因为我有XML的背景知识。果然,分隔符在XML中。

因此,我去寻找如何改变这些。在寻找它的过程中,我在另一篇不相关的文章中发现了以下代码:

代码语言:javascript
复制
    msg.@segmentDelimiter = "\n";
    msg.@elementDelimiter = "*";
    msg.@subelementDelimiter = ":";

你知道吗..。啊,真灵!

现在,我觉得足够危险,而不是如此无知,以至于完全迷失了方向!

票数 1
EN

Stack Overflow用户

发布于 2021-02-21 01:50:26

这可能完全可以在带有字符串替换的预处理器中完成,并跳过在转换器中转换为xml。

代码语言:javascript
复制
message.replace(/~/g, '\n').replace(/\|/g, '*').replace(/\^/g, ':');

我希望你最初的尝试也能行得通,但我自己还没有试过。如果不能仅通过更改数据类型属性来实现这一点,那么这可能是一个bug。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66146035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档