调用TravelItineraryModifyInfoRQ遇‘该乘客已有FQTV数据’错误排查
排查Sabre TravelItineraryModifyInfoRQ 2.1.1接口"该乘客已有FQTV数据"错误
我来帮你分析这个Sabre接口的错误问题,结合你提供的请求报文,原因和解决办法如下:
错误原因分析
你遇到的错误提示:
"该乘客已有FQTV数据(FQTV DATA EXISTS FOR THIS PASSENGER)"
本质是对应NameNumber="02.01"的乘客,在当前订座记录中已经存在一条ProgramID="EY"的常客(FQTV)数据。当你再次通过TravelItineraryModifyInfoRQ接口添加相同航空公司(ProgramID)的常客号时,Sabre系统会判定为重复操作,返回该错误。
你提供的请求报文关键部分:
<soapenv:Body> <ns:TravelItineraryModifyInfoRQ Version="2.1.1"> <ns:CustomerInfo> <ns:CustLoyalty MembershipID="520000001221" NameNumber="02.01" ProgramID="EY" RPH="1" /> </ns:CustomerInfo> </ns:TravelItineraryModifyInfoRQ> </soapenv:Body>
解决办法
针对这个问题,你可以按照以下步骤处理:
- 先确认现有FQTV数据:调用
TravelItineraryReadRQ接口获取当前订座的完整乘客信息,查看02.01乘客是否已经存在ProgramID="EY"的常客记录,确认会员号是否正确。 - 若需更新现有记录:如果是要替换旧的EY会员号,需要先删除原有记录,再添加新的。删除操作只需在
CustLoyalty节点添加Delete="true"属性,示例如下:
发送删除请求后,再重新发送你原来的添加新会员号的请求即可。<ns:CustLoyalty MembershipID="旧的EY会员号" NameNumber="02.01" ProgramID="EY" RPH="1" Delete="true" /> - 若为误重复添加:直接跳过该乘客的EY常客号添加操作,或者检查是否是
NameNumber参数错误导致的误操作(比如选错了乘客)。
内容的提问来源于stack exchange,提问作者user4944342
相关产品推荐
相关产品推荐

