2
respostas

VBA e SAP Scripting - Alteração do código

Possuo o seguinte trecho de código:

    'Verifica se é NS de vistoria
    If tipo_NS <> "OSAA" And tipo_NS <> "OSLA" And tipo_NS <> "APAA" And tipo_NS <> "APMG" And tipo_NS <> "OSA2" Then
        naoTratadas = naoTratadas + 1
        wsLista.Cells(lin, 7) = "NS INFORMADA NÃO É DE VISTORIA (" & tipo_NS & ")"
        session.findById("wnd[0]/tbar[0]/btn[3]").press
        GoTo proximaUC
    End If
    
    textoNS = session.findById("wnd[0]/usr/tabsTAB_GROUP_10/tabp10\TAB01/ssubSUB_GROUP_10:SAPLIQS0:7235/subCUSTOM_SCREEN:SAPLIQS0:7244/subSUBSCREEN_1:SAPLIQS0:7324/txtVIQMFE-FETXT").Text
    
    If Len(textoNS) < 10 Then
        naoTratadas = naoTratadas + 1
        wsLista.Cells(lin, 7) = "NS DO PARECER NÃO ENCONTRADA"
        session.findById("wnd[0]/tbar[0]/btn[3]").press
        GoTo proximaUC
    End If
    
    nsParecer = Left(SoNumero(textoNS), 10)
    
    If Len(nsParecer) < 10 Or Left(nsParecer, 1) <> "1" Then
        naoTratadas = naoTratadas + 1
        wsLista.Cells(lin, 7) = "NS DO PARECER NÃO ENCONTRADA"
        session.findById("wnd[0]/tbar[0]/btn[3]").press
        GoTo proximaUC
    End If
            
    session.findById("wnd[0]/tbar[0]/btn[3]").press
            
    'Insere o número da NS na caixa da IW53
    session.findById("wnd[0]/usr/ctxtRIWO00-QMNUM").Text = nsParecer
    
    'Clica no botão "Continuar"
    session.findById("wnd[0]/tbar[0]/btn[0]").press
    
    'Verifica se é NS do Parecer
    On Error GoTo -1
    On Error GoTo 0

    On Error GoTo NS_nao_encontrada
    
    tipo_NS = session.findById("wnd[0]/usr/tabsTAB_GROUP_10/tabp10\TAB01/ssubSUB_GROUP_10:SAPLIQS0:7235/subCUSTOM_SCREEN:SAPLIQS0:7244/subSUBSCREEN_1:SAPLIQS0:7324/ctxtVIQMFE-FECOD").Text
    
    If tipo_NS <> "PSAA" And tipo_NS <> "PSAI" And tipo_NS <> "PSRA" Then

NS_nao_encontrada: session.findById("wnd[0]/tbar[0]/btn[3]").press naoTratadas = naoTratadas + 1 wsLista.Cells(lin, 7) = "NS DO PARECER NÃO ENCONTRADA" session.findById("wnd[0]/tbar[0]/okcd").Text = "IW53" session.findById("wnd[0]/tbar[0]/btn[0]").press GoTo proximaUC End If

    'Armazena a NS do parecer
    wsLista.Cells(lin, 8) = nsParecer

Preciso alterar o caminho, com o seguinte script:

session.findById("wnd[0]/tbar[0]/okcd").text = "ZSVC148" session.findById("wnd[0]").sendVKey 0 session.findById("wnd[0]/usr/ctxtS_QMDAT-LOW").text = "17.09.2000" session.findById("wnd[0]/usr/txtS_ANLAGE-LOW").text = "3000000000" session.findById("wnd[0]/usr/ctxtS_QMDAT-LOW").setFocus session.findById("wnd[0]/usr/ctxtS_QMDAT-LOW").caretPosition = 10 session.findById("wnd[0]/tbar[1]/btn[8]").press session.findById("wnd[0]/usr/cntlCONTAINER01/shellcont/shell").clickCurrentCell session.findById("wnd[0]/usr/tabsTAB_GROUP_10/tabp10\TAB09").select session.findById("wnd[0]/usr/tabsTAB_GROUP_10/tabp10\TAB09/ssubSUB_GROUP_10:SAPLIQS0:7217/subSUBSCREEN_1:SAPLIQS0:7900/ssubUSER0001:SAPLXQQM:0102/txtVIQMEL-ZZ_COD_SOLICIT").setFocus session.findById("wnd[0]/usr/tabsTAB_GROUP_10/tabp10\TAB09/ssubSUB_GROUP_10:SAPLIQS0:7217/subSUBSCREEN_1:SAPLIQS0:7900/ssubUSER0001:SAPLXQQM:0102/txtVIQMEL-ZZ_COD_SOLICIT").caretPosition = 8 session.findById("wnd[0]").sendVKey 2 session.findById("wnd[0]/usr/tabsTAB_STRIP_100/tabpF191").select

Como posso fazer?

2 respostas

E aí, Bruna! Beleza? Vamos lá, é só adaptar o teu código atual com o novo script que tu passou.

' ... teu código anterior ...

' Insere o número da NS na caixa da IW53
session.findById("wnd[0]/usr/ctxtRIWO00-QMNUM").Text = nsParecer

'Clica no botão "Continuar"
session.findById("wnd[0]/tbar[0]/btn[0]").press

' Verifica se é NS do Parecer
On Error GoTo -1
On Error GoTo 0
On Error GoTo NS_nao_encontrada

tipo_NS = session.findById("wnd[0]/usr/tabsTAB_GROUP_10/tabp10\TAB01/ssubSUB_GROUP_10:SAPLIQS0:7235/subCUSTOM_SCREEN:SAPLIQS0:7244/subSUBSCREEN_1:SAPLIQS0:7324/ctxtVIQMFE-FECOD").Text

If tipo_NS <> "PSAA" And tipo_NS <> "PSAI" And tipo_NS <> "PSRA" Then
    ' Código atual se não for NS do Parecer
    GoTo NS_nao_encontrada
End If

' Armazena a NS do parecer
wsLista.Cells(lin, 8) = nsParecer

' Agora vem o novo script
session.findById("wnd[0]/tbar[0]/okcd").Text = "ZSVC148"
session.findById("wnd[0]").SendVKey 0
session.findById("wnd[0]/usr/ctxtS_QMDAT-LOW").Text = "17.09.2000"
session.findById("wnd[0]/usr/txtS_ANLAGE-LOW").Text = "3000000000"
session.findById("wnd[0]/usr/ctxtS_QMDAT-LOW").SetFocus
session.findById("wnd[0]/usr/ctxtS_QMDAT-LOW").CaretPosition = 10
session.findById("wnd[0]/tbar[1]/btn[8]").Press
session.findById("wnd[0]/usr/cntlCONTAINER01/shellcont/shell").ClickCurrentCell
session.findById("wnd[0]/usr/tabsTAB_GROUP_10/tabp10\TAB09").Select
session.findById("wnd[0]/usr/tabsTAB_GROUP_10/tabp10\TAB09/ssubSUB_GROUP_10:SAPLIQS0:7217/subSUBSCREEN_1:SAPLIQS0:7900/ssubUSER0001:SAPLXQQM:0102/txtVIQMEL-ZZ_COD_SOLICIT").SetFocus
session.findById("wnd[0]/usr/tabsTAB_GROUP_10/tabp10\TAB09/ssubSUB_GROUP_10:SAPLIQS0:7217/subSUBSCREEN_1:SAPLIQS0:7900/ssubUSER0001:SAPLXQQM:0102/txtVIQMEL-ZZ_COD_SOLICIT").CaretPosition = 8
session.findById("wnd[0]").SendVKey 2
session.findById("wnd[0]/usr/tabsTAB_STRIP_100/tabpF191").Select

' Continuação do teu código...

NS_nao_encontrada:
session.findById("wnd[0]/tbar[0]/btn[3]").Press
naoTratadas = naoTratadas + 1
wsLista.Cells(lin, 7) = "NS DO PARECER NÃO ENCONTRADA"
session.findById("wnd[0]/tbar[0]/okcd").Text = "IW53"
session.findById("wnd[0]/tbar[0]/btn[0]").Press

' Continuação do teu código...

É isso aí! Agora teu código original está integrado com o novo script.

Não deu certo, infelizmente