如何通过Sabre SOAP API向PNR添加用户定义接口数据(UDID)
解决Sabre CommandLLSRQ添加UD字段后PNR无变更的问题
可能的原因及修复步骤
确保PNR处于编辑锁定状态
执行UD字段命令前,必须先通过1.[PNR编号]命令调出并锁定目标PNR。如果PNR未被锁定,Sabre会接收命令但不会执行变更,仅返回*作为接收确认。验证命令格式正确性
你使用的命令5.S*RLEPLHYN*UD56 YVRYEG可能存在格式问题。标准UD字段添加的基础格式为UD[代码] [内容],如果RLEPLHYN是航段关联标识,需确认前缀与UD命令的组合是否符合Sabre终端规范。建议先尝试简化命令:UD56 YVRYEG,在锁定PNR后直接执行,看是否生效。检查完整响应中的错误信息
Sabre返回的*仅代表命令已被接收,不代表执行成功。需要解析SabreCommandLLSRQ响应中的<Text>节点,查看是否有隐藏的错误提示(如INVALID COMMAND、FIELD NOT AUTHORIZED等),这些信息是定位问题的关键。尝试API原生节点替代方案
若CommandLLSRQ方式不稳定,可尝试在EndTransactionRQ的HostCommand参数中嵌入UD命令,确保在PNR交易的正确流程中执行:<EndTransactionRQ> <EndTransactionInfo> <HostCommand>UD56 YVRYEG</HostCommand> <Source PseudoCityCode="YOUR_PCC"/> </EndTransactionInfo> </EndTransactionRQ>调用该请求前需确保已通过
PassengerDetailsRQ或AirBookRQ创建/锁定了PNR会话。确认权限与字段限制
某些UD字段代码(如UD56)可能需要特定的用户权限或仅适用于特定类型的PNR(如未出票的预订)。联系Sabre支持团队确认该字段代码的可用性及权限要求。
内容的提问来源于stack exchange,提问作者Parsa Safavi
相关产品推荐
相关产品推荐

