Puntare ad una riga di una tabella
Puntare ad una riga di una tabella
Come da topic, non riesco a puntare tramite macro una riga di una tabella, vorrei riuscire a puntare la riga dopo quella visualizzata in un formulario..sto iniziando da poco ad usare le macro e ancora non riesco a trovare niente in merito, ho cercato anche su google ma niente..qualcuno riuscirebbe a darmi una mano?
OpenOffice 3.2 su Windows 7
- xergio
- Messaggi: 315
- Iscritto il: lunedì 15 marzo 2010, 21:54
- Località: Arzignano (Vicenza)
- Contatta:
Re: Puntare ad una riga di una tabella
Per andare alla riga successiva alla corrente puoi usare il metodo Next del rowset.
Se vuoi inserire una riga puoi usare l'InsertRow del rowset.
Oppure direttamente dal form
Se vuoi inserire una riga puoi usare l'InsertRow del rowset.
Oppure direttamente dal form
Codice: Seleziona tutto
oModel = oEv.Source.getModel
oFormDoc = oModel.getParent
oFormDoc.moveToInsertRow()
Per cortesia, inserisci [Risolto] nel Titolo iniziale se il tuo problema è stato risolto.
---
Sergio Corato
LibO 6.x su Ubuntu 18.04 / OOo 4.x su Windows XP/10 (VirtualBox)
https://efatto.it
---
Sergio Corato
LibO 6.x su Ubuntu 18.04 / OOo 4.x su Windows XP/10 (VirtualBox)
https://efatto.it
Re: Puntare ad una riga di una tabella
xergio grazie intanto dell'aiuto..ma non riesco ad usare il rowset
potresti dirmi come richiamarlo?
avrei due problemi che dovrei risolvere in questo modo..ci sto sbattendo da un po ma ancora non ho trovato nessuna soluzione..ti posto i due problemi, spero riuscirai a farmi accendere una lampadina in testaXD
allora intanto mi servirebbe un tasto in un form che mi permette di eliminare una riga...un po come il tasto che c'è nella barra di navigazione del formulario, ma dovrei farlo tramite macro in quanto quella barra è nascosta per rendere il database più user friendly
uso questo codice per eliminare una riga dal formulario, ma non viene aggiornato e se provo il metodo reload() riparte dalla prima riga, invece di posizionarsi nella riga precedente (come il tasto nella barra di navigazione del formulario) o successiva..
l'altro problema è che ho un campo nel MainForm che è collegato tramite macro ad una griglia in un sottoformulario, ogni volta che aggiorno questo campo, mi si aggiorna la riga nel subform, il problema è che se ho selezionato nel subform la seconda riga, mi aggiorna quella, mentre io vorrei sempre far aggiornare la prima riga a prescindere da quante righe è formata la griglia collegata al MainForm...
Spero sei risucito a capirmi.. se qualcosa non ti è chiaro dimmi pure...
potresti dirmi come richiamarlo?
avrei due problemi che dovrei risolvere in questo modo..ci sto sbattendo da un po ma ancora non ho trovato nessuna soluzione..ti posto i due problemi, spero riuscirai a farmi accendere una lampadina in testaXD
allora intanto mi servirebbe un tasto in un form che mi permette di eliminare una riga...un po come il tasto che c'è nella barra di navigazione del formulario, ma dovrei farlo tramite macro in quanto quella barra è nascosta per rendere il database più user friendly
Codice: Seleziona tutto
sub elimina
oDoc=ThisComponent
oForm=oDoc.DrawPage.Forms.MainForm
ctl=oForm.getbyname("fmtIDCliente")
sql="DELETE FROM `test`.`anagrafica clienti` WHERE `IDCliente`='"& ctl.text &"'"
connessione=connettiDB("nomedb")
EXupdate(connessione,sql)
'deleterecord()
End sub
'__________________________________________________________________
Function connettiDB(nomedb)
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName(nomedb)
If Not DataSource.IsPasswordRequired Then
Connection = DataSource.GetConnection("","")
Else
InteractionHandler = createUnoService("com.sun.star.sdb.InteractionHandler")
Connection = DataSource.ConnectWithCompletion(InteractionHandler)
End If
connettiDB=Connection
End function
' _____________________________________________________
Function EXupdate(conn as object,cmd as string)
Statement = conn.PrepareStatement(cmd)
Statement.executeUpdate()
end function
l'altro problema è che ho un campo nel MainForm che è collegato tramite macro ad una griglia in un sottoformulario, ogni volta che aggiorno questo campo, mi si aggiorna la riga nel subform, il problema è che se ho selezionato nel subform la seconda riga, mi aggiorna quella, mentre io vorrei sempre far aggiornare la prima riga a prescindere da quante righe è formata la griglia collegata al MainForm...
Spero sei risucito a capirmi.. se qualcosa non ti è chiaro dimmi pure...
OpenOffice 3.2 su Windows 7
Re: Puntare ad una riga di una tabella
1 metodo last
2 focus
2 focus
AOO 3.4.1 AOO341m1(Build:9593) Linux Mint Debian/Mate 64bit java 1.6.0.22 XP PRO/32bit
con Base --> sempre backup!!!
Se problema è Risolto --> Inserire [Risolto]nel titolo come spiega qui, grazie
con Base --> sempre backup!!!
Se problema è Risolto --> Inserire [Risolto]nel titolo come spiega qui, grazie