Newsgroup: it.comp.appl.access
Titolo: Maschere: Inserire una casella del numero record

Salve a tutti e Buon Natale.
In una maschera vorrei inserire una casella del numero record senza avere i
pulsanti di spostamento, č possibile?
Grazie Luca.

 Grazie Luca.
Si, ma sarebbe meglio capire come gestisci la Maschera.
Nel senso di esplicitare se è possibile aggiungere nuovi record
e/o eliminare i presenti.
Questo per ottimizzare l'algoritmo di visualizzazione.
Ipotizzando la strada più complessa, quella nella quale
la Form è ad uso completo devi gestire il tutto nell'Evento
Current della stessa:
Ipotiziamo di avere un controllo Label chiamato [lblRecNum]
non usiamo una TextBox perchè non serve editarla.
Private Sub Form_Current()
  Me!lblRecNum.Caption=fRstCount(Me)
End Sub
Private Function fRstCount(c_frm as Access.Form) As Long
   On Error GoTo Err_fRstCount
    Dim add_New As Integer, pos As Long
    'Imposta il contatore di Records=1
    fRstCount = 1
    'Se la FrmMain si trova sul Nuovo Record setta add=1
    add_New = (0 - c_frm.NewRecord)
    'se il Recordset non è vuoto effettua il conteggio corretto
    c_frm.RecordsetClone.MoveLast
    If Not (c_frm.RecordsetClone.RecordCount = 0) Then
        'Restituisce il N° di Records considerando
        'l'eventuale New Record
        fRstCount = c_frm.RecordsetClone.RecordCount + add_New
    End If
Exit_fRstCount:
    Exit Function
Err_fRstCount:
    fRstCount = 1
    Resume Exit_fRstCount
End Function
Ciao
@Alex
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 In una maschera vorrei inserire una casella del numero record senza avere i


 ha scritto nel messaggio
news:ec240a84be8af064af...@mygate.mailgate.org...

Grazie Alex è OK, però mi fa vedere il numero di record presenti e non il
numero del record...
Cerco di chiarire: la maschera è a visualizzazione singola, io scorro con un
pulsante di spostamento record (creato da me) i vari record.
Nella Label visualizzo il numero totale di record presenti e non il numero
del record che sto vedento (tipo pagina 1 di 5....)
Grazie Luca

 Grazie Luca
Prova così:
Private Sub Form_Current()
   Dim RecCount as Long
   Dim RecPos   as Long
   'Esegue il conteggio del numero di Records
   RecCount = fRstCount(Me)
   'Se il conteggio <>1 aggiorna la posizione corrente reale
   If RecCount > 1 Then
      RecPos = Me.CurrentRecord
   Else
      RecPos = 1 : RecCount= 1 
   End If
   Me!lblRecNum.Caption= "Record " RecPos & " di " & RecCount
End Sub
Private Function fRstCount(c_frm as Access.Form) As Long
    On Error GoTo Err_fRstCount
    Dim add_New As Integer, pos As Long
    'Imposta il contatore di Records=1
    fRstCount = 1
    'Se la FrmMain si trova sul Nuovo Record setta add=1
    add_New = (0 - c_frm.NewRecord)
    'se il Recordset non è vuoto effettua il conteggio corretto
    c_frm.RecordsetClone.MoveLast
    If Not (c_frm.RecordsetClone.RecordCount = 0) Then
        'Restituisce il N° di Records considerando
        'l'eventuale New Record
        fRstCount = c_frm.RecordsetClone.RecordCount + add_New
    End If
Exit_fRstCount:
    Exit Function
Err_fRstCount:
    fRstCount = 1
    Resume Exit_fRstCount
End Function
Ciao
@Alex



Grande Alex č proprio ciň che volevo.
Grazie Luca