Publicado el Dejar un comentario

ITPW Importa datos de artículos

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

    ImportaProductos 


End Sub 



Public Sub ImportaProductos()

    Ambiente.Connection.Execute "DELETE FROM prods WHERE articulo <> 'SYS'"   
    Ambiente.Connection.Execute "DELETE FROM clavesadd"   

    Set rstArticulos = CreaRecordSetEnCliente( "SELECT * FROM tpw", Ambiente.Connection )

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

    Set Progress = NewProgress()    

    if rstArticulos.RecordCount > 0 Then
       Progress.Anim rstArticulos.RecordCount, "Importando catálogo de artículos", Ambiente.Path & "\Images\Gears.Avi"    
    end if 

    n = 0

    While Not rstArticulos.EOF 

          n = n + 1

          Progress.Valor n, "Procesando: " & rstArticulos("articulo") & " " & rstArticulos("descrip")

          Query.Reset           
          Query.AddField "PRODS", "articulo", rstArticulos("articulo")
          Query.AddField "PRODS", "descrip", "" & rstArticulos("descrip")
          Query.AddField "PRODS", "linea", rstArticulos("linea")
          Query.AddField "PRODS", "costo_u", 0
          Query.AddField "PRODS", "costo", 0
          Query.AddField "PRODS", "precio1", 10 + ( n * 0.1 )
          Query.AddField "PRODS", "precio2", 0
          Query.AddField "PRODS", "marca", "SYS"
          Query.AddField "PRODS", "ubicacion", "SYS"
          Query.AddField "PRODS", "impuesto", "IVA"
          Query.AddField "PRODS", "paraventa", 1
          Query.AddField "PRODS", "invent", 1
          Query.strState = "INSERT"
          Query.CreateQuery
          Query.Execute

          rstArticulos.MoveNext        

    Wend    

    if n > 0 Then
       Progress.Destroy
    end if

    Set Progress = NewProgress()    

    if rstArticulos.RecordCount > 0 Then
       Progress.Anim rstArticulos.RecordCount, "Importando catálogo de artículos", Ambiente.Path & "\Images\Gears.Avi"    
    end if 

    n = 0

    ' Borramos las lineas existentes
     Ambiente.Connection.Execute "DELETE FROM lineas WHERE linea <> 'SYS'"

    Set rstLineas = CreaRecordSet( "SELECT COUNT(*) FROM lineas GROUP BY linea", Ambiente.Connection )

    if rstLineas(0) > 0 Then
       Progress.Anim rstLineas(0), "Importando catálogo de líneas", Ambiente.Path & "\Images\Gears.Avi"    
    end if 

    Set rstLineas = CreaRecordSet( "SELECT linea FROM prods GROUP BY linea", Ambiente.Connection )

    While Not rstLineas.EOF 
          n = n + 1          

          Progress.Valor n, "Procesando: " & rstLineas("linea")

          Query.Reset           
          Query.AddField "LINEAS", "linea", rstLineas("Linea")
          Query.AddField "LINEAS", "descrip", "" & rstLineas("Linea")
          Query.strState = "INSERT"
          Query.CreateQuery
          Query.Execute
          Progress.Valor n, "Procesando: " & rstLineas("linea")
          rstLineas.MoveNext
    Wend

    Progress.Destroy

End Sub

Deja un comentario