Publicado el Dejar un comentario

BITACORA005 Importa los datos de una bitacora

'----**** 
'----**** MyBusiness POS V20
'----**** Version del script: 1.0
'----**** 19/02/2020
'----**** 
Public Sub Main()

    Set rstMax = CreaRecordSet( "SELECT MAX( id ) FROM bitacora", Ambiente.Connection )
    nBitacora = Val2( rstMax(0) ) + 1

    cArchivo = ArielBrowseFolder1 & "\Bitacora" & nBitacora & ".zip"

    if Not ExisteArchivo( cArchivo ) Then
       MsgBox "No existe la bitacora siguiente"
       Exit Sub
    end if

    Set Files = NewCollection()
    Files.Add "Prods.xml"
    Files.Add "Clavesadd.xml"    

    RichsoftVBZip1.FileName = cArchivo
    RichsoftVBZip1.Extract (Files), 0, False, True, (ArielBrowseFolder1.Text)

    Set rstProds = LoadRsFromXML(ArielBrowseFolder1.Text & "\Prods.xml")    
    Set rstClavesAdd = LoadRsFromXML(ArielBrowseFolder1.Text & "\ClavesAdd.xml")    

    Set Query = NewQuery()
    Set Query.Connection = Ambiente.Connection

    While Not rstProds.EOF 
          Set rstProdX = CreaRecordSet( "SELECT articulo FROM prods WHERE articulo = '" & rstProds("articulo") & "'", Ambiente.Connection )   

          Query.Reset

          if rstProdX.EOF Then
             Query.strState = "INSERT"
          else
             Query.strState = "UPDATE"          
             Query.Condition = "articulo = '" & rstProds("Articulo") & "'" 
          end if

          Query.AddField "prods", "articulo", rstProds("articulo")
          Query.AddField "prods", "descrip", rstProds("descrip")
          Query.AddField "prods", "precio1", Val2(rstProds("precio1"))
          Query.AddField "prods", "precio2", Val2(rstProds("precio2"))
          Query.AddField "prods", "precio3", Val2(rstProds("precio3"))
          Query.AddField "prods", "precio4", Val2(rstProds("precio4"))
          Query.AddField "prods", "precio5", Val2(rstProds("precio5"))
          Query.AddField "prods", "precio6", Val2(rstProds("precio6"))
          Query.AddField "prods", "precio7", Val2(rstProds("precio7"))
          Query.AddField "prods", "precio8", Val2(rstProds("precio8"))
          Query.AddField "prods", "precio9", Val2(rstProds("precio9"))
          Query.AddField "prods", "precio10", Val2(rstProds("precio10"))
          Query.AddField "prods", "c2", Val2(rstProds("c2"))
          Query.AddField "prods", "c3", Val2(rstProds("c3"))
          Query.AddField "prods", "c4", Val2(rstProds("c4"))
          Query.AddField "prods", "c5", Val2(rstProds("c5"))
          Query.AddField "prods", "c6", Val2(rstProds("c6"))
          Query.AddField "prods", "c7", Val2(rstProds("c7"))
          Query.AddField "prods", "c8", Val2(rstProds("c8"))
          Query.AddField "prods", "c9", Val2(rstProds("c9"))
          Query.AddField "prods", "c10", Val2(rstProds("c10"))
          Query.AddField "prods", "bajocosto", Val2(rstProds("bajocosto"))
          Query.AddField "prods", "bloqueado", Val2(rstProds("bloqueado"))
          Query.AddField "prods", "linea", "SYS"
          Query.AddField "prods", "marca", "SYS"
          Query.AddField "prods", "ubicacion", "SYS"
          Query.AddField "prods", "invent", 1
          Query.AddField "prods", "impuesto", rstProds("impuesto")
          Query.CreateQuery
          Query.Execute
          rstProds.MoveNext

    Wend

    While Not rstClavesAdd.EOF 
          Set rstClaveAddX = CreaRecordSet( "SELECT clave FROM clavesadd WHERE clave = '" & rstClavesAdd("clave") & "'", Ambiente.Connection )   

          Query.Reset

          if rstClaveAddX.EOF Then
             Query.strState = "INSERT"
          else 
             Query.strState = "UPDATE"          
             Query.Condition = "articulo = '" & rstClavesAdd("clave") & "'"
          end if

          Query.AddField "clavesadd","Clave", rstClavesAdd("clave")
          Query.AddField "clavesadd","Dato1", rstClavesAdd("dato1")
          Query.AddField "clavesadd","Usuario", rstClavesAdd("usuario")
          Query.AddField "clavesadd","usuFecha", rstClavesAdd("usufecha")
          Query.AddField "clavesadd","usuHora", rstClavesAdd("usuhora")
          Query.AddField "clavesadd","Dato2", rstClavesAdd("dato2")
          Query.AddField "clavesadd","Articulo", rstClavesAdd("Articulo")
          Query.AddField "clavesadd","Cantidad", Val2(rstClavesAdd("cantidad"))
          Query.AddField "clavesadd","Unidad", rstClavesAdd("unidad")
          Query.CreateQuery
          Query.Execute 

          rstClavesAdd.MoveNext
    Wend    

    Query.Reset
    Query.strState = "INSERT"
    Query.AddField "bitacora","id", nBitacora
    Query.AddField "bitacora","usuario", Ambiente.Uid
    Query.AddField "bitacora","usufecha", Date
    Query.AddField "bitacora","usuhora", Formato( Time, "hh:mm:ss" )
    Query.AddField "bitacora","exportado", 1
    Query.CreateQuery
    Query.Execute

    Parent.LLenaBitacoras

    Ambiente.Connection.Execute "UPDATE consec SET consec = " & nBitacora & " WHERE dato = 'Bitacora'" 

End Sub
Deja un comentario