AnsweredAssumed Answered

VBA Search  / Pesquisa VBA - PI ProcessBook

Question asked by matheusarruda on Jun 15, 2015
Latest reply on Jun 15, 2015 by matheusarruda

[ENGLISH]
Dear ,
I am developing a display in ProcessBook that does a search through a metal unit, this search returns the date and time when the metal unit spent in certain equipment .
the problem I'm having is that the value entered in the search result is always the starting and I need value that the value picked up as reference is the last time that A was detected in TAG .

For example :

We have 40 positions in the oven plates , when performing a search with a metal unit that came out of the oven 19:50 me the system returns a value of 18:09 , however this is the time when the board came in the position 40 and was her until the 19:50 ( leaving it considered a desenfornada plate ) I need the result presented me the 19:50 time value when the tag fails to display the metal unit.


[Portugues]

Prezados,
estou desenvolvendo um display no ProcessBook que faz uma pesquisa através de uma unidade metálica, essa pesquisa retorna a data e hora em que a unidade metálica passou em determinados equipamentos.
o problema que estou tendo é que o valor informado no resultado da pesquisa é sempre o valor inicial e eu preciso que o valor pego como referência seja a última vez em que essa UM foi detectada na TAG.

 

Por exemplo:

 

No forno  temos 40 posições de placas, ao realizar uma pesquisa com uma unidade metálica que saiu do forno as 19:50 o sistema me retorna um valor de 18:09, porem essa é a hora em que a placa entrou na posição 40 e ficou nela até as 19:50 (Ao sair dela considera-se uma placa desenfornada) eu preciso que o resultado me apresente o valor de 19:50 hora em que a tag deixa de exibir a unidade metálica.

 

Estrutura do código:

Code structure :

' Pesquisa Walking Beam

Public Sub Buscar()

   

    Dim srv As Server

    Dim pipPoint As PIPoint

    Dim pivValues As PIValues

    Dim strTag As String

    Dim strFiltro As String

    Dim strUniMetalica As String

   

    If (txtUniMetalica.Text = "") Then

        lblUnidadeMetalica.Contents = "Não encontrada."

        lblDatUniMetalica.Contents = " "

        Exit Sub

    End If

   

   

    lblUnidadeMetalica.Contents = " "

    lblDatUniMetalica.Contents = " "

   

    Set srv = PISDK.Servers.DefaultServer

    strUniMetalica = Trim(UCase(txtUniMetalica.Text))

     

    strTag = "LTQ_FRN_ID40A"

    strFiltro = "compare( '" & strTag & "', """ & strUniMetalica & "*"")"

    Set pipPoint = srv.PIPoints(strTag)

    Set pivValues = pipPoint.Data.RecordedValues(datInicio.Value, datFinal.Value, btInside, strFiltro)

    For i = 1 To pivValues.Count

        If (pivValues.Item(i).Value <> "Filtered") Then

            lblUnidadeMetalica.Contents = pivValues.Item(i).Value

            lblDatUniMetalica.Contents = CStr(pivValues.Item(i).TimeStamp.LocalDate)

          

            Exit For

        End If

    Next

   

    strTag = "LTQ_FRN_ID40B"

    strFiltro = "compare( '" & strTag & "', """ & strUniMetalica & "*"")"

    Set pipPoint = srv.PIPoints(strTag)

    Set pivValues = pipPoint.Data.RecordedValues(datInicio.Value, datFinal.Value, btInside, strFiltro)

    For i = 1 To pivValues.Count

        If (pivValues.Item(i).Value <> "Filtered") Then

            lblUnidadeMetalica.Contents = pivValues.Item(i).Value

            lblDatUniMetalica.Contents = CStr(pivValues.Item(i).TimeStamp.LocalDate)

            Exit For

        End If

    Next

   

    If (lblUnidadeMetalica.Contents = " ") Then

        lblUnidadeMetalica.Contents = "Não encontrada."

        lblDatUniMetalica.Contents = " "

    End If

    Call BuscaHSB

End Sub

 

 

 

 

 

Imagem do Display:

Picture:

 

Sem título.png

Outcomes