Private Sub Command1_Click()
Dim esegui, fine As Boolean
Dim posizione, tipo_finmsg As Integer
Dim Casa, Codice, Msg, Verifica As String
'Dim tmp As Currency
Dim contatore, Costo, decrem As Double
Dim Sconto As Single
contatore = 0
DB_ARTICOLI.Refresh
posizione = 1
decrem = 0
esegui = True
On Error Resume Next
' Open db
LISTINO_GO.DatabaseName = Dir1 & "\" & File1
LISTINO_GO.RecordSource = "select * from listino_go order by codice_marca, codice_articolo_produttore"
LISTINO_GO.Refresh
F_ARTAGG.Caption = "AGGIORNAMENTO DEL LISTINO IN CORSO SI PREGA DI ATTENDERE........"
DBGrid1.Visible = False
While Not LISTINO_GO.Recordset.EOF
Fornit.Text = LISTINO_GO.Recordset.RecordCount
Casa = LISTINO_GO.Recordset("codice_marca")
Codice = LISTINO_GO.Recordset("codice_articolo_produttore")
Costo = LISTINO_GO.Recordset("prezzo_listino_produttore_ok")
Sconto = LISTINO_GO.Recordset("sconto_totale")
Verifica = LISTINO_GO.Recordset("codice_marca")
Casa = Trim(Casa)
Codice = Trim(Codice)
Costo = Costo
Sconto = Sconto
ric_casa.Text = Casa
Ric_cod.Text = Codice
If Asc(Verifica) > 33 And Asc(Verifica) <> 127 Then
If Err.Number <> 0 Then esegui = False
DB_ARTICOLI.RecordSource = "select * from db_articoli where casa = " & Chr$(34) & Casa & Chr$(34) & " and codice = " & Chr$(34) & Codice & Chr$(34)
DB_ARTICOLI.Refresh
If Not DB_ARTICOLI.Recordset.EOF Then
DB_ARTICOLI.Recordset.Edit
DB_ARTICOLI.Recordset("Listino_Casa") = Costo
DB_ARTICOLI.Recordset("sconto_fornitore") = Sconto
DB_ARTICOLI.Recordset("precedente") = DB_ARTICOLI.Recordset("COSTO")
' tmp = Costo - (Costo * DB_ARTICOLI.Recordset("sconto_fornitore") / 100)
' If tmp - Fix(tmp) <> 0 Then
' DB_ARTICOLI.Recordset("COSTO") = Format((Costo - (Costo * DB_ARTICOLI.Recordset("sconto_fornitore") / 100)), F_MENU.FormatoEuro)
' Else
DB_ARTICOLI.Recordset("COSTO") = Format((Costo - (Costo * DB_ARTICOLI.Recordset("sconto_fornitore") / 100)), F_MENU.FormatoEuro)
' End If
DB_ARTICOLI.Recordset("LISTINO") = Format((DB_ARTICOLI.Recordset("costo") + (DB_ARTICOLI.Recordset("costo") * DB_ARTICOLI.Recordset("ricarico") / 100)), F_MENU.FormatoEuro)
DB_ARTICOLI.Recordset("TOTIVA") = Format(((DB_ARTICOLI.Recordset("LISTINO") * DB_ARTICOLI.Recordset("IVA") / 100)), F_MENU.FormatoEuro)
DB_ARTICOLI.Recordset("Totale") = Format((DB_ARTICOLI.Recordset("LISTINO") + DB_ARTICOLI.Recordset("TOTIVA")), F_MENU.FormatoEuro)
DB_ARTICOLI.Recordset("DATA") = Date
DB_ARTICOLI.Recordset.Update
DoEvents
contatore = contatore + 1
End If
DB_ARTICOLI.RecordSource = "select * from db_articoli order by casa, codice"
DB_ARTICOLI.Refresh
LISTINO_GO.Recordset.MoveNext
posizione = posizione + 1
decrem = decrem + 1
Lstato.Caption = Fornit.Text & "Mancano alla fine " & Fornit.Text - decrem
Else
fine = True
End If
Wend
DBGrid1.Visible = True
Call Form_Activate
MsgBox "Sono Stati Aggiornati N°: " & contatore & " Articoli"
If esegui Then
tipo_finmsg = 0
Msg = "Aggiornamento del listino completato." & Chr$(13)
Msg = Msg & "Se necessario inserire un altro disco e riavviare"
If MsgBox(Msg, tipo_finmsg, "Aggiornamento Listino") = 1 Then
End If
Else
tipo_finmsg = 0
Msg = "Si è verificato un errore riselezionare il file d'aggiornamento e riprovare" & Chr$(13)
If MsgBox(Msg, tipo_finmsg, "Aggiornamento Listino") = 1 Then
End If
End If
LISTINO_GO.Recordset.Close
F_ARTAGG.Caption = "Aggiornamento Listino Articoli Singoli"""
End Sub