Salve a tutti,
ho un vecchissimo programma di contablita che gia all'epoca era fatto un po così
ma e sempre andato abastanza bene , ora ho apportato delle modifiche ma mi da
dei problemi/difetti/errori e tanto che non ci faccio piu nente quindi sono molto rugginoso
sarei enormemente grato se qualcuno mi potesse dare una mano.
in prati il difetto si svolge in due form:
uno e il preventivo
l'altro e il database degli articoli
praticamente normalente se prelevo l'aticolo poi mi viene inserito in una textbox
e poi posso copiarlo all interno del preventivo
se inserisco questa call che mi rchiama una routine che fa dei calcoli
in pratica mi fa tutta la procedura correttamente ma poi nella textbox non trovo nulla ..
non riesco a capire dove sta l'inghippo
iserisco il codice della parte interessata
questo e il form del preeventivo
la chiamata è CALL CALCOLI all 'interno di Form Activate
Option Compare Text
Dim salva As Boolean
Dim flag As Boolean
Dim T_IVA As Double, t_netto As Double
Dim attuale As Integer
#If Win32 Then
Private Declare Function SetBkMode Lib "gdi32" _
(ByVal hDC As Long, ByVal nBkMode As Long) As Long
Private iBKMode As Long
#Else
Private Declare Function SetBkMode Lib "GDI" (ByVal hDC As Integer _
, ByVal nBkMode As Integer) As Integer
Private iBKMode As Integer
#End If
Private Const TRANSPARENT = 1
Private Const OPAQUE = 2
Public Sub riordino()
DBGrid1.Columns(0).Visible = False
DBGrid1.Columns(1).Visible = False
DBGrid1.Columns(2).Visible = False
DBGrid1.Columns(3).Width = 720
DBGrid1.Columns(3).Alignment = 2
DBGrid1.Columns(4).Width = 1120
DBGrid1.Columns(4).Alignment = 2
DBGrid1.Columns(5).Width = 5900
DBGrid1.Columns(6).Width = 600
DBGrid1.Columns(6).Alignment = 2
DBGrid1.Columns(7).Width = 1100
DBGrid1.Columns(7).Alignment = 2
DBGrid1.Columns(8).Width = 1000
DBGrid1.Columns(9).Width = 1000
DBGrid1.Columns(10).Width = 1000
DBGrid1.Columns(11).Width = 1000
DBGrid1.Columns(12).Width = 1000
DBGrid1.Columns(13).Width = 1000
DBGrid1.Columns(14).Width = 1000
DBGrid1.Columns(15).Width = 700
DBGrid1.Columns(16).Width = 1000
' DBGrid1.SetFocus
End Sub
Function dividi(descr As String, l As Integer) As String
Dim cont As Integer
Dim lung As Integer
Dim spazio As String
' Lunghezza stringa restituita
lung = l
If Len(descr) <= lung Then
dividi = descr
Else
cont = lung
spazio = Mid(descr, lung, 1)
While Not spazio = " "
cont = cont - 1
spazio = Mid(descr, cont, 1)
Wend
dividi = Mid(descr, 1, cont)
End If
End Function
Private Sub CANCELLA()
Des.Text = ""
Um.Text = ""
Prunit.Text = ""
Prscont.Text = ""
Sconto.Text = ""
iva.Text = ""
L9.Visible = False
L10.Visible = False
Costo.Visible = False
Ricarico.Visible = False
End Sub
Private Sub Stampa(pagina As Integer, stringa As String)
If pagina = 0 Or pagina = attuale Then
Printer.Print stringa
End If
End Sub
Private Sub Bt_addnota_Click()
If Not IsNull(DB_STOPRE.Recordset("NOTE")) Then
Note.Text = DB_STOPRE.Recordset("NOTE")
Else
Note.Text = ""
End If
Note.Visible = True
L_note.Visible = True
BT_insnota.Visible = True
Bt_annota.Visible = True
BT_parz.Visible = False
BT_forn.Visible = False
BT_var.Visible = False
Note.SetFocus
Bt_addnota.Visible = False
Call riordino
'Call Calcoli
End Sub
Private Sub BT_AnNota_Click()
Note.Visible = False
L_note.Visible = False
BT_insnota.Visible = False
Bt_annota.Visible = False
BT_parz.Visible = True
BT_var.Visible = True
Bt_addnota.Visible = True
BT_forn.Visible = True
DBGrid1.SetFocus
Call riordino
'Call Calcoli
End Sub
Private Sub BT_annvoce_Click()
BT_var.Visible = True
Bt_addnota.Visible = True
BT_parz.Visible = True
BT_newvoce.Visible = True
BT_elart.Visible = False
L9.Visible = False
L10.Visible = False
Costo.Visible = False
Ricarico.Visible = False
BT_modvoce.Visible = True
BT_cancvoce.Visible = True
BT_insvoce.Visible = False
BT_sta.Visible = True
scelta.Visible = False
BT_annvoce.Visible = False
BT_forn.Visible = True
flag = False
DB_PREV.Recordset.MoveLast
DB_PREV.Recordset.Delete
DB_PREV.Recordset.MoveLast
DBGrid1.SetFocus
Call riordino
'Call Calcoli
End Sub
Private Sub Bt_cancVoce_Click()
Dim Msg As String
Dim tipo_finmsg As Integer
If Not DB_PREV.Recordset.EOF Then
tipo_finmsg = 4
Msg = "Conferma la Cancellazione della voce dal documento ?"
If MsgBox(Msg, tipo_finmsg, "Cancella da Documento") = 6 Then
DB_PREV.Recordset.Delete
DB_PREV.Recordset.MoveNext
If DB_PREV.Recordset.EOF Then
DB_PREV.Refresh
If Not DB_PREV.Recordset.EOF Then DB_PREV.Recordset.MoveLast
End If
DBGrid1.SetFocus
' Me.Timer1.Enabled = True
Call Calcoli
Call riordino
End If
End If
'Call riordino
'Call Calcoli
End Sub
Private Sub BT_elart_Click()
scelta.ZOrder 0
scelta.Visible = True
End Sub
Private Sub BT_forn_Click()
F_CAMFOR.cliente = DB_STOPRE.Recordset("CLIENTE")
F_CAMFOR.NORD = NORD.Text
F_CAMFOR.DATA = DATA.Text
F_PREINS.Hide
F_CAMFOR.Show
End Sub
Private Sub BT_insnota_Click()
DB_STOPRE.Recordset.Edit
DB_STOPRE.Recordset("NOTE") = Note.Text
DB_STOPRE.Recordset.Update
Note.Visible = False
L_note.Visible = False
BT_insnota.Visible = False
Bt_annota.Visible = False
BT_parz.Visible = True
BT_var.Visible = True
BT_forn.Visible = True
Bt_addnota.Visible = True
DBGrid1.SetFocus
End Sub
Private Sub BT_insvoce_Click()
iva.Text = DB_STOPRE.Recordset("IVA")
salva = True
DB_PREV.Recordset.Edit
DB_PREV.Recordset("NUMERO") = NORD.Text
If Qty.Text <> "" And Prscont.Text <> "" Then
DB_PREV.Recordset("IMPORTO") = Format((Qty.Text * Prscont.Text), F_MENU.FormatoEuro)
End If
If Qty.Text <> "" And UDC.Text <> "" Then
DB_PREV.Recordset("Tot_UDC") = Format((Qty.Text * UDC.Text), F_MENU.FormatoEuro)
End If
If Qty.Text <> "" And MANOD.Text <> "" Then
DB_PREV.Recordset("TMANOD") = Format((Qty.Text * MANOD.Text), F_MENU.FormatoEuro)
End If
DB_PREV.Recordset.Update
salva = False
BT_var.Visible = True
Bt_addnota.Visible = True
BT_parz.Visible = True
BT_sta.Visible = True
BT_newvoce.Visible = True
BT_modvoce.Visible = True
BT_cancvoce.Visible = True
BT_elart.Visible = False
scelta.Visible = False
L9.Visible = False
L10.Visible = False
Costo.Visible = False
Ricarico.Visible = False
BT_insvoce.Visible = False
BT_annvoce.Visible = False
BT_forn.Visible = True
DB_PREV.Recordset.MoveLast
DBGrid1.SetFocus
flag = False
Call Calcoli
Call riordino
' DBGrid1.SetFocus
End Sub
Private Sub BT_modvoce_Click()
If Not DB_PREV.Recordset.EOF Then
salva = True
DB_PREV.Recordset.Edit
If Qty.Text <> "" And Prscont.Text <> "" Then
DB_PREV.Recordset("IMPORTO") = Format((Qty.Text * Prscont.Text), F_MENU.FormatoEuro)
End If
If Qty.Text <> "" And UDC.Text <> "" Then
DB_PREV.Recordset("TOT_UDC") = Format((Qty.Text * UDC.Text), F_MENU.FormatoEuro)
End If
If Qty.Text <> "" And MANOD.Text <> "" Then
DB_PREV.Recordset("TMANOD") = Format((Qty.Text * MANOD.Text), F_MENU.FormatoEuro)
End If
DB_PREV.Recordset.Update
salva = False
DBGrid1.SetFocus
End If
Call Calcoli
Call riordino
End Sub
Private Sub BT_newvoce_Click()
' flag = True
DB_PREV.Recordset.AddNew
DB_PREV.Recordset("NUMERO") = NORD.Text
DB_PREV.Recordset.Update
'con il seguente comando aggiunge voce sempre e solo alla fine del database
DB_PREV.Recordset.MoveLast
Casa.Text = ""
Codice.Text = ""
Des.Text = ""
Um.Text = ""
UDC.Text = ""
Tot_UDC.Text = ""
MANOD.Text = ""
TMANOD.Text = ""
Prunit.Text = ""
Prscont.Text = ""
Sconto.Text = ""
iva.Text = ""
BT_var.Visible = False
BT_elart.Visible = True
BT_sta.Visible = False
BT_insnota.Visible = False
flag = True
Bt_annota.Visible = False
L_note.Visible = False
Note.Visible = False
Bt_addnota.Visible = False
BT_parz.Visible = False
BT_newvoce.Visible = False
BT_insvoce.Visible = True
BT_annvoce.Visible = True
BT_modvoce.Visible = False
BT_forn.Visible = False
BT_cancvoce.Visible = False
Call riordino
'Call Calcoli
Casa.SetFocus
End Sub
Private Sub Calcoli()
Dim tipo_finmsg As String
Dim Msg As String
Dim IMPO, iva, TUDC, TMANOD As Double
IMPO = 0
TUDC = 0
iva = 0
TMANOD = 0
TOT1 = 0
UTIMP = 0
DB_PREV.Refresh
While Not DB_PREV.Recordset.EOF
If Not IsNull(DB_PREV.Recordset("IMPORTO")) Then
IMPO = IMPO + DB_PREV.Recordset("IMPORTO")
End If
If Not IsNull(DB_PREV.Recordset("TOT_UDC")) Then
TUDC = TUDC + DB_PREV.Recordset("TOT_UDC")
End If
If Not IsNull(DB_PREV.Recordset("TMANOD")) Then
TMANOD = TMANOD + DB_PREV.Recordset("TMANOD")
End If
DB_PREV.Recordset.MoveNext
On Error GoTo errore
Wend
iva = IMPO * DB_STOPRE.Recordset("IVA") / 100
TOT1 = TUDC + TMANOD
UTIMP = IMPO - TOT1
tipo_finmsg = 0
tot.Caption = Format(IMPO, F_MENU.FormatoEuro)
IVA1.Caption = Format(iva, F_MENU.FormatoEuro)
impo1.Caption = Format(IMPO + iva, F_MENU.FormatoEuro)
TUDC1.Caption = Format(TUDC, F_MENU.FormatoEuro)
TMANOD1.Caption = Format(TMANOD, F_MENU.FormatoEuro)
manodudc.Caption = Format(UTIMP + TMANOD, F_MENU.FormatoEuro)
utilimp.Caption = Format(IMPO - TOT1, F_MENU.FormatoEuro)
' Msg = "IL TOTALE DEI CALCOLI DI PREVENTIVO é " & Chr$(13)
' Msg = Msg & Chr$(13)
' Msg = Msg & "IMPONIBILE : " & Chr$(32) & Format(IMPO, F_MENU.FormatoEuro) & Chr$(13)
' Msg = Msg & "IVA : " & Format(IVA, F_MENU.FormatoEuro) & Chr$(13)
' Msg = Msg & "TOTALE : " & Format(IMPO + IVA, F_MENU.FormatoEuro) & Chr$(13) & Chr$(13)
' Msg = Msg & "TOTALE U.D.C. : " & Format(TUDC, F_MENU.FormatoEuro) & Chr$(13)
' Msg = Msg & "TOT. MANOD : " & Format(TMANOD, F_MENU.FormatoEuro) & Chr$(13) & Chr$(13)
' Msg = Msg & "MANOD + UDC : " & Format(TUDC + TMANOD, F_MENU.FormatoEuro) & Chr$(13)
' Msg = Msg & "UTILE IMP. : " & Format(IMPO - TOT1, F_MENU.FormatoEuro) & Chr$(13) & Chr$(13)
' If MsgBox(Msg, tipo_finmsg, "CALCOLI PREVENTIVO") = 1 Then
'End If
DB_PREV.Refresh
DB_PREV.Recordset.MoveLast
salva = False
' Call riordino
' Me.Timer1.Enabled = True
Exit Sub
errore:
MsgBox "è inrtervenuto un erroe !", vbExclamation
On Error Resume Next
End Sub
Private Sub BT_sta_Click()
Dim I As Byte
DB_STAMPANTI.DatabaseName = CurDir & "\SEA.mdb"
DB_STAMPANTI.RecordSource = "db_stampanti"
DB_STAMPANTI.Refresh
I = DB_STAMPANTI.Recordset("IMPOSTATA")
attualmente.Text = Printers(I).DeviceName
For I = 0 To Printers.Count - 1
stamp.AddItem Printers(I).DeviceName, I
Next I
st.ZOrder 0
Contratto.Value = 0
st.Visible = True
Call riordino
'Call Calcoli
End Sub
Private Sub BT_var_Click()
variazione.ZOrder 0
variazione.Visible = True
var.Text = ""
var.SetFocus
Call riordino
'Call Calcoli
End Sub
Private Sub Casa_LostFocus()
Dim esegui As Boolean
Casa.Text = UCase(Casa.Text)
esegui = True
If Codice.Text <> "" And flag Then
DB_ARTASS.RecordSource = "select * from db_artass where casa = " & Chr$(34) & Casa.Text & Chr$(34) & " and codice= " & Chr$(34) & Codice.Text & Chr$(34)
DB_ARTASS.Refresh
If Not DB_ARTASS.Recordset.EOF Then
Casa = DB_ARTASS.Recordset("CASA")
Codice = DB_ARTASS.Recordset("CODICE")
Des = DB_ARTASS.Recordset("DESCRIZIONE")
Um = DB_ARTASS.Recordset("UM")
UDC = DB_ARTASS.Recordset("UDC")
MANOD = DB_ARTASS.Recordset("Manod")
Costo = DB_ARTASS.Recordset("COSTO")
Ricarico = DB_ARTASS.Recordset("RICARICO")
Prunit = DB_ARTASS.Recordset("LISTINO")
Prscont = DB_ARTASS.Recordset("LISTINO")
iva = DB_ARTASS.Recordset("IVA")
L9.Visible = True
L10.Visible = True
Costo.Visible = True
Ricarico.Visible = True
Qty.Text = 1
Sconto.Text = 0
esegui = False
Else
Call CANCELLA
End If
If esegui Then
DB_ARTICOLI.RecordSource = "select * from db_articoli where casa = " & Chr$(34) & Casa.Text & Chr$(34) & " and codice= " & Chr$(34) & Codice.Text & Chr$(34)
DB_ARTICOLI.Refresh
If Not DB_ARTICOLI.Recordset.EOF Then
Casa = DB_ARTICOLI.Recordset("CASA")
Codice = DB_ARTICOLI.Recordset("CODICE")
Des = DB_ARTICOLI.Recordset("DESCRIZIONE")
Um = DB_ARTICOLI.Recordset("UM")
Costo = DB_ARTICOLI.Recordset("COSTO")
UDC = DB_ARTICOLI.Recordset("costo")
Ricarico = DB_ARTICOLI.Recordset("RICARICO")
Prunit = DB_ARTICOLI.Recordset("LISTINO")
Prscont = DB_ARTICOLI.Recordset("LISTINO")
iva = DB_ARTICOLI.Recordset("IVA")
L9.Visible = True
L10.Visible = True
Costo.Visible = True
Ricarico.Visible = True
Qty.Text = 1
Sconto.Text = 0
esegui = False
Else
Call CANCELLA
End If
End If
End If
End Sub
Private Sub codice_LostFocus()
Dim esegui As Boolean
Codice.Text = UCase(Codice.Text)
esegui = True
If Casa.Text <> "" And flag Then
DB_ARTASS.RecordSource = "select * from db_artass where casa = " & Chr$(34) & Casa.Text & Chr$(34) & " and codice= " & Chr$(34) & Codice.Text & Chr$(34)
DB_ARTASS.Refresh
If Not DB_ARTASS.Recordset.EOF Then
Casa = DB_ARTASS.Recordset("CASA")
Codice = DB_ARTASS.Recordset("CODICE")
Des = DB_ARTASS.Recordset("DESCRIZIONE")
Um = DB_ARTASS.Recordset("UM")
UDC = DB_ARTASS.Recordset("UDC")
MANOD = DB_ARTASS.Recordset("Manod")
Costo = DB_ARTASS.Recordset("COSTO")
Ricarico = DB_ARTASS.Recordset("RICARICO")
Prunit = DB_ARTASS.Recordset("LISTINO")
Prscont = DB_ARTASS.Recordset("LISTINO")
iva = DB_ARTASS.Recordset("IVA")
L9.Visible = True
L10.Visible = True
Costo.Visible = True
Ricarico.Visible = True
Qty.Text = 1
Sconto.Text = 0
esegui = False
Else
Call CANCELLA
End If
If esegui Then
DB_ARTICOLI.RecordSource = "select * from db_articoli where casa = " & Chr$(34) & Casa.Text & Chr$(34) & " and codice= " & Chr$(34) & Codice.Text & Chr$(34)
DB_ARTICOLI.Refresh
If Not DB_ARTICOLI.Recordset.EOF Then
Casa = DB_ARTICOLI.Recordset("CASA")
Codice = DB_ARTICOLI.Recordset("CODICE")
Des = DB_ARTICOLI.Recordset("DESCRIZIONE")
Um = DB_ARTICOLI.Recordset("UM")
UDC = DB_ARTICOLI.Recordset("COSTO")
Costo = DB_ARTICOLI.Recordset("COSTO")
Ricarico = DB_ARTICOLI.Recordset("RICARICO")
Prunit = DB_ARTICOLI.Recordset("LISTINO")
Prscont = DB_ARTICOLI.Recordset("LISTINO")
iva = DB_ARTICOLI.Recordset("IVA")
L9.Visible = True
L10.Visible = True
Costo.Visible = True
Ricarico.Visible = True
Qty.Text = 1
Sconto.Text = 0
esegui = False
Else
Call CANCELLA
End If
End If
End If
End Sub
Private Sub Command1_Click()
With F_ARTRMO
.L_DocP.Visible = True
.mnuart.Enabled = False
.mnumenu.Enabled = False
.BT_REGMOD.Visible = False
.BT_CANCELLA.Visible = False
.BT_pins.Visible = True
.BT_pann.Visible = True
End With
scelta.Visible = False
F_ARTRMO.Caption = "Inserimento Articoli Singoli in Preventivo"
F_PREINS.Hide
F_ARTRMO.Show
End Sub
Private Sub Command2_Click()
With F_ASSRMO
.L_DocP.Visible = True
.mnuart.Enabled = False
.mnumenu.Enabled = False
.BT_REGMOD.Visible = False
.BT_CANCELLA.Visible = False
.BT_pins.Visible = True
.BT_pann.Visible = True
End With
scelta.Visible = False
F_ARTRMO.Caption = "Inserimento Articoli Assemblati in Preventivo"
F_PREINS.Hide
F_ASSRMO.Show
End Sub
Private Sub Command3_Click()
scelta.Visible = False
End Sub
Private Sub Command6_Click()
stamp.Clear
st.Visible = False
End Sub
Private Sub dis_modello()
' verticali
' Printer.Line (42, 8.5)-(95, 8.5)
Printer.Line (42, 16.5)-(95, 16.5) ', RGB(184, 227, 254), BF
Printer.Line (5, 14.5)-(42, 14.5) ', RGB(184, 227, 254), BF
Printer.Line (5, 20.5)-(95, 20.5) ', RGB(184, 227, 254), BF
Printer.Line (5, 22.5)-(95, 22.5) ', RGB(184, 227, 254), BF
Printer.Line (5, 52.5)-(84.5, 52.5) ', RGB(184, 227, 254), BF
Printer.Line (12, 54.5)-(62, 54.5) ', RGB(184, 227, 254), BF
Printer.Line (8, 56)-(62, 56) ', RGB(184, 227, 254), BF
Printer.Line (8, 57.5)-(62, 57.5) ', RGB(184, 227, 254), BF
Printer.Line (84.5, 54.5)-(95, 54.5) ', RGB(184, 227, 254), BF
Printer.Line (84.5, 56.5)-(95, 56.5) ', RGB(184, 227, 254), BF
Printer.Line (5, 58)-(95, 58) ', RGB(184, 227, 254), BF
Printer.Line (5, 60)-(18, 60) ', RGB(184, 227, 254), BF
' orizzontali
Printer.Line (42, 14.5)-(42, 20.5) ', RGB(184, 227, 254), BF
Printer.Line (5, 14.5)-(5, 60) ', RGB(184, 227, 254), BF
Printer.Line (18, 58)-(18, 60) ', RGB(184, 227, 254), BF
' Printer.Line (5, 12)-(5, 62)', RGB(184, 227, 254), BF
Printer.Line (20, 20.5)-(20, 22.5) ', RGB(184, 227, 254), BF
Printer.Line (58, 20.5)-(58, 52.5) ', RGB(184, 227, 254), BF
' Printer.Line (59.5, 12)-(59.5, 62)
Printer.Line (62, 20.5)-(62, 52.5) ', RGB(184, 227, 254), BF
Printer.Line (70, 20.5)-(70, 52.5) ', RGB(184, 227, 254), BF
Printer.Line (65, 52.5)-(65, 58) ', RGB(184, 227, 254), BF
Printer.Line (84.5, 20.5)-(84.5, 58) ', RGB(184, 227, 254), BF
Printer.Line (95, 16.5)-(95, 58) ', RGB(184, 227, 254), BF
End Sub
Private Sub Command8_Click()
variazione.Visible = False
End Sub
Private Sub Command9_Click()
Dim Ric As Single
variazione.Visible = False
If var.Text <> "" Then
DB_PREV.Refresh
salva = True
While Not DB_PREV.Recordset.EOF
If Not IsNull(DB_PREV.Recordset("PREZZO")) Then
Ric = DB_PREV.Recordset("PREZZO") * var.Text / 100
DB_PREV.Recordset.Edit
DB_PREV.Recordset("PREZZO") = Format((DB_PREV.Recordset("PREZZOI") - Ric), F_MENU.FormatoEuro)
' On Error Resume Next
DB_PREV.Recordset("IMPORTO") = Format((DB_PREV.Recordset("PREZZO") * DB_PREV.Recordset("QUANTITA")), F_MENU.FormatoEuro)
DB_PREV.Recordset("SCONTO") = Format(var.Text, F_MENU.FormatoEuro)
DB_PREV.Recordset.Update
End If
DB_PREV.Recordset.MoveNext
Wend
salva = False
Me.Timer1.Enabled = True
End If
End Sub
Private Sub DB_prev_Validate(Action As Integer, Save As Integer)
If salva = False Then Save = False
End Sub
Private Sub Netto(V_IVA As Double)
DB_PREV.RecordSource = "select * from db_prev where NUMERO =" & NORD.Text & " order by ID "
DB_PREV.Refresh
t_netto = "0"
T_IVA = "0"
While Not DB_PREV.Recordset.EOF
If Not IsNull(DB_PREV.Recordset("PREZZO")) Then
t_netto = t_netto + DB_PREV.Recordset("IMPORTO")
End If
DB_PREV.Recordset.MoveNext
Wend
T_IVA = t_netto * V_IVA / 100
End Sub
'Private Sub S_IVA(V_IVA As Currency)
' DB_PREV.RecordSource = "select * from db_prev where NUMERO =" & NORD.Text & " order by ID "
' DB_PREV.Refresh
' T_IVA = "0"
' T_IVA = t_netto * V_IVA / 100
'End Sub
Private Sub DBGrid1_KeyPress(KeyAscii As Integer)
If Chr(KeyAscii) = "g" Or Chr(KeyAscii) = "G" Then DBGrid1.Height = 8500
If Chr(KeyAscii) = "p" Or Chr(KeyAscii) = "P" Then DBGrid1.Height = 2616
End Sub
Private Sub Form_Activate()
flag = True
If BT_elart.Visible = False Then
DB_PREV.DatabaseName = CurDir$ & "\SEA.mdb"
DB_PREV.RecordSource = "select * from db_Prev where numero = " & NORD.Text & " order by ID"
DB_PREV.Refresh
flag = False
End If
DB_ARTICOLI.DatabaseName = CurDir$ & "\SEA.mdb"
DB_ARTASS.DatabaseName = CurDir$ & "\SEA.mdb"
DB_STOPRE.DatabaseName = CurDir$ & "\SEA.mdb"
DB_STOPRE.RecordSource = "select * from db_stopre where numero = " & NORD.Text
DB_STOPRE.Refresh
DB_EURO.DatabaseName = CurDir & "\SEA.mdb"
DB_EURO.RecordSource = "db_EURO"
DB_EURO.Refresh
salva = False
Call Calcoli
Call riordino
' DBGrid1.Columns(0).Visible = False
'DBGrid1.Columns(1).Visible = False
'DBGrid1.Columns(2).Width = 620
' DBGrid1.Columns(2).Alignment = 2
' DBGrid1.Columns(3).Width = 620
' DBGrid1.Columns(3).Alignment = 2
' DBGrid1.Columns(4).Width = 920
' DBGrid1.Columns(4).Alignment = 2
' DBGrid1.Columns(5).Width = 4700
' DBGrid1.Columns(6).Width = 500
' DBGrid1.Columns(6).Alignment = 2
' DBGrid1.Columns(7).Width = 723
' DBGrid1.Columns(7).Alignment = 2
' DBGrid1.Columns(8).Width = 680
' DBGrid1.Columns(9).Width = 680
' DBGrid1.Columns(10).Width = 680
' DBGrid1.Columns(11).Width = 680
' DBGrid1.Columns(12).Width = 680
' DBGrid1.Columns(13).Width = 680
' DBGrid1.Columns(14).Width = 550
' DBGrid1.Columns(15).Width = 550
' DBGrid1.Columns(16).Width = 680
End Sub
Private Sub Form_Deactivate()
Dim IMPO, iva, parz As Double
IMPO = 0
DB_PREV.Refresh
While Not DB_PREV.Recordset.EOF
If Not IsNull(DB_PREV.Recordset("PREZZO")) And Not IsNull(DB_PREV.Recordset("QUANTITA")) And Not IsNull(DB_PREV.Recordset("IVA")) Then
IMPO = IMPO + DB_PREV.Recordset("IMPORTO")
End If
DB_PREV.Recordset.MoveNext
Wend
DB_STOPRE.Recordset.Edit
DB_STOPRE.Recordset("IMPONIBILE") = Format(IMPO, F_MENU.FormatoEuro)
DB_STOPRE.Recordset.Update
End Sub
Private Sub Form_Load()
Dim X As Integer
Dim Y As Integer
X = (Screen.Width - 11400) / 2
Y = (Screen.Height - 8004) / 2
F_PREINS.Move X, Y
End Sub
Private Sub Form_Resize()
DBGrid1.Width = Me.Width - 250
End Sub
Private Sub Form_Unload(Cancel As Integer)
Call Form_Deactivate
End
End Sub
Private Sub IVA_LostFocus()
Dim tipo_finmsg As String
Dim Msg As String
If iva.Text <> "" And Not IsNumeric(iva.Text) Then
tipo_finmsg = 0
Msg = "La Quantità non è in formato numerico"
If MsgBox(Msg, tipo_finmsg, "Creazione Preventivo") = 1 Then
End If
iva.SetFocus
End If
End Sub
Private Sub MANOD_LostFocus()
Dim tipo_finmsg As String
Dim Msg As String
If MANOD.Text <> "" And Not IsNumeric(MANOD.Text) Then
tipo_finmsg = 0
Msg = "Il prezzo non è in formato numerico"
If MsgBox(Msg, tipo_finmsg, "Creazione Preventivo") = 1 Then
End If
MANOD.SetFocus
End If
End Sub
Private Sub mnuesci_Click()
Bt_addnota.Visible = True
BT_parz.Visible = True
BT_newvoce.Visible = True
BT_elart.Visible = False
L9.Visible = False
L10.Visible = False
Costo.Visible = False
Ricarico.Visible = False
BT_modvoce.Visible = True
BT_cancvoce.Visible = True
BT_insvoce.Visible = False
BT_annvoce.Visible = False
BT_forn.Visible = True
F_PREINS.Hide
F_MENU.Show
End Sub
Private Sub mnuins_Click()
F_MENU.DATA.Text = Date
F_MENU.DB_STOPRE.DatabaseName = CurDir & "\SEA.mdb"
F_MENU.DB_STOPRE.RecordSource = "select * from db_stopre order by numero"
F_MENU.DB_STOPRE.Refresh
If Not F_MENU.DB_STOPRE.Recordset.EOF Then
F_MENU.DB_STOPRE.Recordset.MoveLast
F_MENU.NORD.Text = DB_STOPRE.Recordset("numero") + 1
Else
F_MENU.NORD.Text = 1
End If
F_MENU.Prev.Visible = True
F_MENU.NORD.Visible = True
F_MENU.dat.Visible = True
F_MENU.DATA.Visible = True
F_MENU.num.Visible = True
F_MENU.V_IVA.Visible = True
F_MENU.iva.Visible = True
F_MENU.BtIns.Visible = True
F_MENU.Btann.Visible = True
Bt_addnota.Visible = True
BT_parz.Visible = True
BT_newvoce.Visible = True
BT_elart.Visible = False
L9.Visible = False
L10.Visible = False
Costo.Visible = False
Ricarico.Visible = False
BT_modvoce.Visible = True
BT_cancvoce.Visible = True
BT_insvoce.Visible = False
BT_annvoce.Visible = False
BT_forn.Visible = True
F_PREINS.Hide
F_MENU.Show
End Sub
Private Sub mnuric_Click()
Bt_addnota.Visible = True
BT_parz.Visible = True
BT_newvoce.Visible = True
BT_elart.Visible = False
L9.Visible = False
L10.Visible = False
Costo.Visible = False
Ricarico.Visible = False
BT_modvoce.Visible = True
BT_cancvoce.Visible = True
BT_insvoce.Visible = False
BT_annvoce.Visible = False
BT_forn.Visible = True
F_PREINS.Hide
F_STOPRE.Show
End Sub
Private Sub nump_Change()
If nump.Text <> "" Then tutte.Value = 0
End Sub
Private Sub nump_GotFocus()
If nump.Text <> "" Then tutte.Value = 0
End Sub
Private Sub Prscont_LostFocus()
Dim tipo_finmsg As String
Dim Msg As String
If Prscont.Text <> "" And Not IsNumeric(Prscont.Text) Then
tipo_finmsg = 0
Msg = "La Quantità non è in formato numerico"
If MsgBox(Msg, tipo_finmsg, "Creazione Preventivo") = 1 Then
End If
Prscont.SetFocus
End If
End Sub
Private Sub Prunit_LostFocus()
Dim tipo_finmsg As String
Dim Msg As String
If Prunit.Text <> "" And Not IsNumeric(Prunit.Text) Then
tipo_finmsg = 0
Msg = "Il prezzo non è in formato numerico"
If MsgBox(Msg, tipo_finmsg, "Creazione Preventivo") = 1 Then
End If
Prunit.SetFocus
End If
If Prunit.Text <> "" And IsNumeric(Prunit.Text) Then
Sconto.Text = 0
Prscont.Text = Prunit.Text
iva.Text = DB_STOPRE.Recordset("IVA")
End If
End Sub
Private Sub Qty_LostFocus()
Dim tipo_finmsg As String
Dim Msg As String
If Qty.Text <> "" And Not IsNumeric(Qty.Text) Then
tipo_finmsg = 0
Msg = "La Quantità non è in formato numerico"
If MsgBox(Msg, tipo_finmsg, "Creazione Preventivo") = 1 Then
End If
Qty.SetFocus
End If
End Sub
Private Sub r_Click()
F_PREINS.Hide
F_STOPRE.Show
F_STOPRE.Codice_Cliente.Visible = True
'Call F_STOPRE.ordCli_Click
'DB_STOPRE.RecordSource = "select * from db_stopre where codcli=" & F_STOPRE.cliente.Text
' DB_STOPRE.Refresh
' If DB_STOPRE.Recordset.EOF Then
' Call messaggio
' End If
'Call riord
End Sub
Private Sub Sconto_LostFocus()
Dim tipo_finmsg As String
Dim Msg As String
Dim sc As Currency
If Sconto.Text <> "" And Not IsNumeric(Sconto.Text) Then
tipo_finmsg = 0
Msg = "La Quantità non è in formato numerico"
If MsgBox(Msg, tipo_finmsg, "Creazione Preventivo") = 1 Then
End If
Sconto.SetFocus
Else
If Sconto.Text <> "" And Prunit <> "" Then
sc = Prunit.Text * Sconto.Text / 100
Prscont = Prunit - sc
End If
End If
End Sub
Private Sub Timer1_Timer()
Form_Activate
Me.Timer1.Enabled = False
End Sub
Private Sub tutte_Click()
If tutte.Value = 1 Then
nump.Text = ""
End If
End Sub
Private Sub UM_LostFocus()
Um.Text = UCase(Um.Text)
End Sub
Private Sub Var_LostFocus()
Dim tipo_finmsg As String
Dim Msg As String
If var.Text <> "" And Not IsNumeric(var.Text) Then
tipo_finmsg = 0
Msg = "La Quantità non è in formato numerico"
If MsgBox(Msg, tipo_finmsg, "Creazione Preventivo") = 1 Then
End If
var.SetFocus
End If
End Sub
QUESTO E IL form delgli aticoli che richiama il database degli articoli
la chiamata dall altro form viene eeguita alla SUB
Sub BT_pins_Click()
la porzione dicodice interessato è quella che fa capo a questa istruzione :
If L_DocP.Visible Then
vedete poi il codice
in fondo poi chiude questo from e apre l'altro se e attiva la mia call il tutto non va a buon fie, se lo disattivo si..
spero mi possiate autare instanto grazie mille
Option Compare Text
Dim flag, flag1 As Boolean
Dim pos_db, cont, pos_ric As Integer
Dim salva As Boolean
Private Sub BT_CANCELLA_Click()
Dim Msg As String
Dim tipo_finmsg As Integer
If Not DB_ARTICOLI.Recordset.EOF Then
tipo_finmsg = 4
Msg = "Conferma la Cancellazione dei dati di" & Chr$(13)
Msg = Msg & DB_ARTICOLI.Recordset("CASA") & " " & DB_ARTICOLI.Recordset("CODICE") & " ?"
If MsgBox(Msg, tipo_finmsg, "Cancella Dati Articolo") = 6 Then
salva = True
DB_ARTICOLI.Recordset.Delete
salva = False
DB_ARTICOLI.Recordset.MoveNext
If DB_ARTICOLI.Recordset.EOF Then
DB_ARTICOLI.Refresh
If Not DB_ARTICOLI.Recordset.EOF Then DB_ARTICOLI.Recordset.MoveLast
End If
flag = False
flag1 = False
ric_casa.Text = ""
Ric_cod.Text = ""
ric_des.Text = ""
flag = True
flag1 = True
DB_ART.Refresh
End If
End If
End Sub
Private Sub BT_pann_Click()
BT_pins.Visible = False
BT_pann.Visible = False
BT_REGMOD.Visible = True
BT_CANCELLA.Visible = True
mnuart.Enabled = True
mnumenu.Enabled = True
F_ARTRMO.Caption = "Ricerca e Modifica dati Articoli Singoli"
If L_DocP.Visible Then
F_ARTRMO.Hide
F_PREINS.Show
End If
If L_DocB.Visible Then
F_ARTRMO.Hide
F_BOLINS.Show
End If
If L_DocF.Visible Then
F_ARTRMO.Hide
F_FATINS.Show
End If
If L_DocR.Visible Then
F_ARTRMO.Hide
F_RICINS.Show
End If
L_DocF.Visible = False
L_DocP.Visible = False
L_DocB.Visible = False
L_DocR.Visible = False
End Sub
Private Sub BT_pins_Click()
If Not DB_ARTICOLI.Recordset.EOF Then
BT_pins.Visible = False
BT_pann.Visible = False
BT_REGMOD.Visible = True
BT_CANCELLA.Visible = True
mnuart.Enabled = True
mnumenu.Enabled = True
F_ARTRMO.Caption = "Ricerca e Modifica dati Articoli Singoli"
If L_cantieri.Visible Then
With F_CANTINS
.DB_CANT.DatabaseName = CurDir & "\SEA.mdb"
.DB_CANT.RecordSource = "select * from db_cant where CANT = " & .NORD.Text & " and com = " & .com.Text
.DB_CANT.Refresh
If Not .DB_CANT.Recordset.EOF Then
.DB_CANT.Recordset.MoveLast
End If
.Casa = Casa.Text
.Codice = Codice.Text
.Des = Des.Text
.Um = Um.Text
.Costo = Prezzo.Text
.Ricarico = Ricarico.Text
.Prunit = DB_ARTICOLI.Recordset("LISTINO")
.Prscont = DB_ARTICOLI.Recordset("LISTINO")
.iva = iva.Text
.C0.Visible = True
.R0.Visible = True
.Costo.Visible = True
.Ricarico.Visible = True
.Qty.Text = 1
.Sconto.Text = 0
End With
F_ARTRMO.Hide
F_CANTINS.Show
End If
If L_DocP.Visible Then
With F_PREINS
.DB_PREV.DatabaseName = CurDir & "\SEA.mdb"
.DB_PREV.RecordSource = "select * from db_Prev where numero =" & .NORD.Text '& " order by ID"
.DB_PREV.Refresh
If Not .DB_PREV.Recordset.EOF Then
.DB_PREV.Recordset.MoveLast
End If
.Casa = Casa.Text
.Codice = Codice.Text
.Des = Des.Text
.Um = Um.Text
.Costo = Prezzo.Text
.Ricarico = Ricarico.Text
.Prunit = DB_ARTICOLI.Recordset("LISTINO")
.Prscont = DB_ARTICOLI.Recordset("LISTINO")
.iva = iva.Text
.L9.Visible = True
.L10.Visible = True
.Costo.Visible = True
.Ricarico.Visible = True
.Qty.Text = 1
.Sconto.Text = 0
End With
F_ARTRMO.Hide
F_PREINS.Show
End If
If L_DocF.Visible Then
With F_FATINS
.DB_FATTURE.DatabaseName = CurDir & "\SEA.mdb"
.DB_FATTURE.RecordSource = "select * from db_fatture where numero = " & .NORD.Text '& "order By ID"
.DB_FATTURE.Refresh
If Not .DB_FATTURE.Recordset.EOF Then
.DB_FATTURE.Recordset.MoveLast
End If
.Casa = Casa.Text
.Codice = Codice.Text
.Des = Des.Text
.Um = Um.Text
.Costo = Prezzo.Text
.Ricarico = Ricarico.Text
.Prunit = DB_ARTICOLI.Recordset("LISTINO")
.Prscont = DB_ARTICOLI.Recordset("LISTINO")
.iva = iva.Text
.L9.Visible = True
.L10.Visible = True
.Costo.Visible = True
.Ricarico.Visible = True
.Qty.Text = 1
.Sconto.Text = 0
End With
F_ARTRMO.Hide
F_FATINS.Show
End If
If L_DocFele.Visible Then
With F_FATTELE
.DB_FATTELE.DatabaseName = CurDir & "\SEA.mdb"
.DB_FATTELE.RecordSource = "select * from db_fattele where numero = " & .NORD.Text '& "order By ID"
.DB_FATTELE.Refresh
If Not .DB_FATTELE.Recordset.EOF Then
.DB_FATTELE.Recordset.MoveLast
End If
.Casa = Casa.Text
.Codice = Codice.Text
.Des = Des.Text
.Um = Um.Text
.Costo = Prezzo.Text
.Ricarico = Ricarico.Text
.Prunit = DB_ARTICOLI.Recordset("LISTINO")
.Prscont = DB_ARTICOLI.Recordset("LISTINO")
.iva = iva.Text
.L9.Visible = True
.L10.Visible = True
.Costo.Visible = True
.Ricarico.Visible = True
.Qty.Text = 1
.Sconto.Text = 0
End With
F_ARTRMO.Hide
F_FATTELE.Show
End If
If L_DocB.Visible Then
With F_BOLINS
.DB_BOLLE.DatabaseName = CurDir & "\SEA.mdb"
.DB_BOLLE.RecordSource = "select * from db_BOLLE where numero = " & .NORD.Text '& "order by ID"
.DB_BOLLE.Refresh
If Not .DB_BOLLE.Recordset.EOF Then
.DB_BOLLE.Recordset.MoveLast
End If
.Casa = Casa.Text
.Codice = Codice.Text
.Des = Des.Text
.Um = Um.Text
.Costo = Prezzo.Text
.Ricarico = Ricarico.Text
.Prunit = DB_ARTICOLI.Recordset("LISTINO")
.Prscont = DB_ARTICOLI.Recordset("LISTINO")
.iva = iva.Text
.L9.Visible = True
.L10.Visible = True
.Costo.Visible = True
.Ricarico.Visible = True
.Qty.Text = 1
.Sconto.Text = 0
End With
F_ARTRMO.Hide
F_BOLINS.Show
End If
If L_DocR.Visible Then
With F_RICINS
.DB_RICEVUTE.DatabaseName = CurDir & "\SEA.mdb"
.DB_RICEVUTE.RecordSource = "select * from db_ricevute where numero = " & .NORD.Text
.DB_RICEVUTE.Refresh
If Not .DB_RICEVUTE.Recordset.EOF Then
.DB_RICEVUTE.Recordset.MoveLast
End If
.Casa = Casa.Text
.Codice = Codice.Text
.Des = Des.Text
.Um = Um.Text
.Costo = Prezzo.Text
.Ricarico = Ricarico.Text
.Prunit = DB_ARTICOLI.Recordset("LISTINO")
.Prscont = DB_ARTICOLI.Recordset("LISTINO")
.iva = iva.Text
.L9.Visible = True
.L10.Visible = True
.Costo.Visible = True
.Ricarico.Visible = True
.Qty.Text = 1
.Sconto.Text = 0
End With
F_ARTRMO.Hide
F_RICINS.Show
End If
L_DocF.Visible = False
L_DocP.Visible = False
L_DocB.Visible = False
L_DocR.Visible = False
L_cantieri.Visible = False
End If
End Sub
Private Sub BT_REGMOD_Click()
Dim Msg As String
Dim tipo_finmsg As Integer
Dim esegui As Boolean
Dim pos As Integer
If Not DB_ARTICOLI.Recordset.EOF Then
esegui = True
pos = DB_ARTICOLI.Recordset.AbsolutePosition
DB_ART.Refresh
While (Not DB_ART.Recordset.EOF) And esegui
If DB_ART.Recordset("CASA") = Casa.Text And DB_ART.Recordset("CODICE") = Codice.Text And DB_ART.Recordset.AbsolutePosition <> pos Then
esegui = False
Else
DB_ART.Recordset.MoveNext
End If
Wend
If esegui Then
salva = True
DB_ARTICOLI.Recordset.Edit
If Prezzo.Text <> "" And Ricarico.Text <> "" Then
If DB_ARTICOLI.Recordset("COSTO") <> Prezzo.Text Or DB_ARTICOLI.Recordset("Ricarico") <> Ricarico.Text Or DB_ARTICOLI.Recordset("iva") <> iva.Text Then
DB_ARTICOLI.Recordset("data") = Date
End If
DB_ARTICOLI.Recordset("LISTINO") = Format((Prezzo.Text + (Prezzo.Text * Ricarico.Text / 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)
End If
DB_ARTICOLI.Recordset.Update
salva = False
Else
tipo_finmsg = 0
Msg = "Il Codice della casa " & DB_ARTICOLI.Recordset("CASA") & " è già esistente."
Msg = Msg & " La modifica non può essere registrata"
If MsgBox(Msg, tipo_finmsg, "Modifica Dati Articoli") = 1 Then
Casa.SetFocus
End If
End If
End If
End Sub
Private Sub BT_RIC_Click()
Dim pos_str, tipo_finmsg As Integer
Dim var_db, Msg As String
Dim trovato As Boolean
If Not DB_ARTICOLI.Recordset.EOF Then
If ric_des.Text <> "" Then
trovato = False
pos_db = DB_ARTICOLI.Recordset.AbsolutePosition
cont = 1
While cont < 3 And Not trovato
While (Not DB_ARTICOLI.Recordset.EOF) And Not trovato And cont < 3
var_db = DB_ARTICOLI.Recordset("DESCRIZIONE")
pos_str = InStr(var_db, ric_des.Text)
If pos_str > 0 Then
trovato = True
Else
DB_ARTICOLI.Recordset.MoveNext
If DB_ARTICOLI.Recordset.AbsolutePosition = pos_db Then
cont = 3
End If
End If
Wend
If DB_ARTICOLI.Recordset.EOF Then
DB_ARTICOLI.Refresh
cont = cont + 1
End If
Wend
If Not trovato Then
tipo_finmsg = 0
Msg = "ATTENZIONE: La parola non è presente in elenco"
If MsgBox(Msg, tipo_finmsg, "Ricerca Articolo") = 1 Then
ric_des.SetFocus
End If
Else
BT_RIC.Visible = False
succ.Visible = True
BT_stop.Visible = True
ric_des.Locked = True
End If
End If
End If
End Sub
Private Sub BT_STOP_Click()
BT_stop.Visible = False
succ.Visible = False
BT_RIC.Visible = True
ric_des.Locked = False
End Sub
Private Sub carsca_Click()
F_ARTRMO.Hide
F_ARTINV.Show
End Sub
Private Sub Casa_LostFocus()
Casa.Text = UCase(Casa.Text)
End Sub
Private Sub codice_LostFocus()
Codice.Text = UCase(Codice.Text)
End Sub
Private Sub DB_ARTICOLI_Validate(Action As Integer, Save As Integer)
If salva = False Then Save = False
End Sub
Private Sub Form_Activate()
Dim sdir As String
sdir = CurDir
DB_ARTICOLI.DatabaseName = sdir & "\sea.mdb"
DB_ARTICOLI.RecordSource = "select * from db_articoli order by casa,codice"
DB_ARTICOLI.Refresh
DB_ART.DatabaseName = sdir & "\sea.mdb"
DB_ART.RecordSource = "select * from db_articoli order by casa,codice"
DB_ART.Refresh
DBGrid1.Columns(0).Width = 500
DBGrid1.Columns(0).Alignment = 0
DBGrid1.Columns(1).Width = 920
DBGrid1.Columns(1).Alignment = 0
DBGrid1.Columns(2).Width = 3500
DBGrid1.Columns(2).Alignment = 0
DBGrid1.Columns(3).Width = 380
DBGrid1.Columns(3).Alignment = 2
DBGrid1.Columns(4).Width = 870
DBGrid1.Columns(4).Alignment = 0
DBGrid1.Columns(5).Width = 750
DBGrid1.Columns(5).Alignment = 0
DBGrid1.Columns(6).Width = 750
DBGrid1.Columns(6).Alignment = 0
DBGrid1.Columns(7).Width = 750
DBGrid1.Columns(7).Alignment = 0
DBGrid1.Columns(8).Width = 750
DBGrid1.Columns(8).Alignment = 0
DBGrid1.Columns(9).Width = 700
DBGrid1.Columns(9).Alignment = 0
DBGrid1.Columns(10).Width = 750
DBGrid1.Columns(10).Alignment = 2
DBGrid1.Columns(11).Width = 750
DBGrid1.Columns(11).Alignment = 0
DBGrid1.Columns(12).Width = 750
DBGrid1.Columns(12).Alignment = 0
DBGrid1.Columns(13).Width = 750
DBGrid1.Columns(13).Alignment = 0
DBGrid1.Columns(14).Width = 1000
DBGrid1.Columns(14).Alignment = 0
DBGrid1.SetFocus
salva = False
flag = False
flag1 = True
ric_casa = ""
Ric_cod = ""
ric_des = ""
flag = True
flag1 = True
BT_stop.Visible = False
succ.Visible = False
BT_RIC.Visible = True
ric_des.Locked = False
End Sub
Private Sub Form_Load()
Dim X As Integer
Dim Y As Integer
X = (Screen.Width - 11400) / 2
Y = (Screen.Height - 8004) / 2
F_ARTRMO.Move X, Y
End Sub
Private Sub Form_Resize()
DBGrid1.Width = Me.Width - 250
End Sub
Private Sub Form_Unload(Cancel As Integer)
End
End Sub
Private Sub Giacenza_LostFocus()
Dim tipo_finmsg As String
Dim Msg As String
If Giacenza.Text <> "" And Not IsNumeric(Giacenza.Text) Then
tipo_finmsg = 0
Msg = "La giacenza non è in formato numerico"
If MsgBox(Msg, tipo_finmsg, "Inserimento Dati Articoli") = 1 Then
End If
Giacenza.SetFocus
End If
End Sub
Private Sub IVA_LostFocus()
Dim tipo_finmsg As String
Dim Msg As String
If iva.Text <> "" And Not IsNumeric(iva.Text) Then
tipo_finmsg = 0
Msg = "L'IVA non è in formato numerico"
If MsgBox(Msg, tipo_finmsg, "Inserimento Dati Articoli") = 1 Then
End If
iva.SetFocus
End If
End Sub
Private Sub list_Click()
F_ARTRMO.Hide
F_ARTAGG.Show
End Sub
Private Sub mnuesci_Click()
F_ARTRMO.Hide
F_MENU.Show
End Sub
Private Sub mnuins_Click()
F_ARTRMO.Hide
F_ARTINS.Show
End Sub
Private Sub modtut_Click()
F_ARTRMO.Hide
F_ARTMTU.Show
End Sub
Private Sub Prezzo_LostFocus()
Dim tipo_finmsg As String
Dim Msg As String
If Prezzo.Text <> "" And Not IsNumeric(Prezzo.Text) Then
tipo_finmsg = 0
Msg = "Il prezzo non è in formato numerico"
If MsgBox(Msg, tipo_finmsg, "Inserimento Dati Articoli") = 1 Then
End If
Prezzo.SetFocus
End If
End Sub
Private Sub ric_casa_Change()
Dim trovato As Boolean
Dim var_db, var_ins As String
Dim lung As Integer
If flag1 Then
flag = False
Ric_cod.Text = ""
flag = True
DB_ARTICOLI.Refresh
var_ins = ric_casa.Text
lung = Len(var_ins)
While (Not DB_ARTICOLI.Recordset.EOF) And Not trovato
var_db = DB_ARTICOLI.Recordset("CASA")
var_db = Left(var_db, lung)
If var_db = var_ins Then
trovato = True
ric_casa.SetFocus
Else
DB_ARTICOLI.Recordset.MoveNext
End If
Wend
If DB_ARTICOLI.Recordset.EOF Then
DB_ARTICOLI.Refresh
ric_casa.SetFocus
End If
pos_ric = DB_ARTICOLI.Recordset.AbsolutePosition
End If
End Sub
Private Sub ric_cod_Change()
Dim trovato As Boolean
Dim var_db, var_ins As String
Dim lung, pos, I As Integer
If flag Then
var_ins = Ric_cod.Text
If ric_casa = "" Then
DB_ARTICOLI.Refresh
pos_ric = DB_ARTICOLI.Recordset.AbsolutePosition
End If
lung = Len(var_ins)
While (Not DB_ARTICOLI.Recordset.EOF) And Not trovato
If Ric_cod = "" Then
DB_ARTICOLI.Refresh
For I = 1 To pos_ric
DB_ARTICOLI.Recordset.MoveNext
Next I
Ric_cod.SetFocus
End If
var_db = DB_ARTICOLI.Recordset("CODICE")
var_db = Left(var_db, lung)
If var_db = var_ins Then
trovato = True
Ric_cod.SetFocus
Else
DB_ARTICOLI.Recordset.MoveNext
End If
Wend
If DB_ARTICOLI.Recordset.EOF Then
If ric_casa = "" Then
DB_ARTICOLI.Refresh
Ric_cod.SetFocus
Else
DB_ARTICOLI.Refresh
For I = 1 To pos_ric
DB_ARTICOLI.Recordset.MoveNext
Next I
Ric_cod.SetFocus
End If
End If
End If
End Sub
Private Sub Ricarico_LostFocus()
Dim tipo_finmsg As String
Dim Msg As String
If Ricarico.Text <> "" And Not IsNumeric(Ricarico.Text) Then
tipo_finmsg = 0
Msg = "Il ricarico non è in formato numerico"
If MsgBox(Msg, tipo_finmsg, "Inserimento Dati Articoli") = 1 Then
End If
Ricarico.SetFocus
End If
End Sub
Private Sub sta_Click()
F_ARTRMO.Hide
F_ARTSTA.Show
End Sub
Private Sub succ_Click()
Dim pos_str, tipo_finmsg, I As Integer
Dim var_db, Msg As String
Dim trovato As Boolean
trovato = False
If Not (DB_ARTICOLI.Recordset.AbsolutePosition = 1 And cont = 2) Then
DB_ARTICOLI.Recordset.MoveNext
End If
While cont < 3 And Not trovato
While (Not DB_ARTICOLI.Recordset.EOF) And Not trovato And cont < 3
If DB_ARTICOLI.Recordset.AbsolutePosition >= pos_db And cont = 2 Then
cont = 3
End If
var_db = DB_ARTICOLI.Recordset("DESCRIZIONE")
pos_str = InStr(var_db, ric_des.Text)
If pos_str > 0 Then
trovato = True
Else
DB_ARTICOLI.Recordset.MoveNext
End If
Wend
If DB_ARTICOLI.Recordset.EOF Then
DB_ARTICOLI.Refresh
cont = cont + 1
End If
Wend
If cont >= 3 Then
tipo_finmsg = 0
Msg = "ATTENZIONE: Tutte le occorrenze della parola sono state trovate"
If MsgBox(Msg, tipo_finmsg, "Ricerca Articolo") = 1 Then
ric_des.SetFocus
BT_stop.Visible = False
succ.Visible = False
BT_RIC.Visible = True
ric_des.Locked = False
End If
End If
End Sub
ringrazio tutti per la cortesia e la disponibilità
in fede sergio t