如何在Sabre SOAP API中从队列中删除特定的PNR

如何在Sabre SOAP API中从队列中删除特定的PNR,soap,sabre,Soap,Sabre,我使用GetReservationRQ检索命名的PNR。然后我想从队列中删除此PNR。我已尝试使用QueueAccessRQ 带有 返回“如果离开队列,则无法执行此操作” 带有 返回“未对PNR进行任何更改-更新或忽略” 带有 返回“导航、选择相互排斥” 即使我在QueueAccessRQ之前忽略了TransactionRQ或EndTransactionRQ,消息也是相同的,除了 IgnoreTransactionRQ后跟QueueAccessRQ和 返回“无法结束事务-工作区中不存在PNR”

我使用GetReservationRQ检索命名的PNR。然后我想从队列中删除此PNR。我已尝试使用QueueAccessRQ

带有
返回“如果离开队列,则无法执行此操作”

带有
返回“未对PNR进行任何更改-更新或忽略”

带有
返回“导航、选择相互排斥”

即使我在QueueAccessRQ之前忽略了TransactionRQ或EndTransactionRQ,消息也是相同的,除了 IgnoreTransactionRQ后跟QueueAccessRQ和
返回“无法结束事务-工作区中不存在PNR”


如何从队列中删除特定的PNR?

您应该能够使用QueueAccessLLSRQ和GetReservationRQ,但必须使用有状态请求(和会话令牌)

您可能希望执行以下操作:

  • 会话创建器
  • GetReservationRQ
  • 队列访问LSSRQ
  • 会话关闭器
  • 您的GetReservation可能看起来像:

    
    ****记录定位器在这里****
    有状态
    标题
    简单的
    STL
    
    然后QueueAccessLLSRQ:

    
    

    还请记住,从队列中删除时,GetReservationRQ和QueueLLSRQ调用之间对PNR所做的任何其他更改都将被终止处理。

    这意味着您没有在队列模式下工作-如果不在队列模式下,QR将不工作


    QueueAccessRQ返回“如果离开队列,则无法执行此操作”

    我现在对流程的工作原理有点了解。我正在排队,我的移动失败了。我正在处理队列外的数据,但删除操作失败。发生此错误的原因是,我可以在队列中删除(QR)或忽略(I),但要移动(QueueMoveRQ)pnr,我必须离开队列。我试图读取队列并删除、忽略或移动每个PNR。解决方案是在队列上处理移动和离开队列,同时在队列中存储位置。搬家后,我必须回到队列并导航到以前的位置。亲爱的杰马森,我也有同样的问题。我发现你的工作流程不正确。通过techspecs sabre api,然后您需要在getreservation之前读取队列。@DavidLeep此工作流确实有效,我经常使用此工作流。在队列模式或PNR模式下,有两种方法可以使用队列命令。如果您处于队列模式,则QR操作无法获取队列号,它将从当前活动队列中删除PNR。在PNR模式下工作时,即不调用QueueAccessLLSRQ加载,则QR需要知道要删除的队列。
    <GetReservationRQ xmlns="http://webservices.sabre.com/pnrbuilder/v1_18" Version="1.18.0">
        <Locator>****RECORD LOCATOR HERE****</Locator>
        <RequestType>Stateful</RequestType>
        <ReturnOptions>
            <SubjectAreas>
                <SubjectArea>HEADER</SubjectArea>
            </SubjectAreas>
            <ViewName>Simple</ViewName>
            <ResponseFormat>STL</ResponseFormat>
        </ReturnOptions>
    </GetReservationRQ>
    
    <QueueAccessRQ xmlns="http://webservices.sabre.com/sabreXML/2011/10" ReturnHostCommand="true" Version="2.0.6">
      <Navigation Action="QR" />
      <QueueIdentifier PseudoCityCode="****PCC HERE****" Number="****QUEUE NUMBER HERE****" />
    </QueueAccessRQ>