Formulario con Query con più ricerche
-
- Messaggi: 65
- Iscritto il: venerdì 12 giugno 2020, 12:26
Re: Formulario con Query con più ricerche
come devo fare per creare la macro? E ovviamente devo cambiare i campi della tabella storico come hai fatto tu? Mi sembra che mettesti string la colonna termine turno
Open Office 4.1.7
Re: Formulario con Query con più ricerche
viewtopic.php?f=29&t=10531mirabellomusic ha scritto:come devo fare per creare la macro?
Pagine iniziali ...
mirabellomusic ha scritto:E ovviamente devo cambiare i campi della tabella storico
charlie ha scritto: Ho dovuto apportare alcune modifiche:
- Il formulario 'Inserimento' è stato abilitato alla modifica dei record
- Nella tabella 'Storico' sono stati modificati alcuni tipi di campo perché errati (es. testo per numeri) o per esigenze di esecuzione dalla macro ('Termine turno' è ora tipo testo, ma per indicare l'ora dovrebbe andare bene lo stesso).
- È stata eliminata la 'Digitazione necessaria' di tutti i campi
- Sono state eliminate le relazioni fisse fra tabelle
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
-
- Messaggi: 65
- Iscritto il: venerdì 12 giugno 2020, 12:26
Re: Formulario con Query con più ricerche
Sono state eliminate le relazioni fisse fra tabelle. Cosa dovrei fare qui?
Open Office 4.1.7
-
- Messaggi: 65
- Iscritto il: venerdì 12 giugno 2020, 12:26
Re: Formulario con Query con più ricerche
Ho cambiato alcuni nomi campi nella macro che erano sbagliati, ora mi da questo errore (ho eliminato tutte le relazioni fra tabelle)... non so cosa possa essere
- Allegati
-
- Annotazione 2020-08-05 110007.png (7.88 KiB) Visto 1801 volte
Open Office 4.1.7
Re: Formulario con Query con più ricerche
Di solito è unmessaggio che si riferisce alla modifica di un campo relazionato con un'altra tabella. Sicuro di aver cancellato le relazioni?
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Formulario con Query con più ricerche
Nuova versione con codice macro suggerita da @F3K Total sul forum inglese (che ringrazio ).
Funziona subito con qualsiasi tipo di campo (testo, decimale, intero, data, ora) senza necessità di controllare i nomi campo e senza eliminare le relazioni fra le tabelle.
Funziona direttamente sul tuo file originale.
Funziona subito con qualsiasi tipo di campo (testo, decimale, intero, data, ora) senza necessità di controllare i nomi campo e senza eliminare le relazioni fra le tabelle.
Funziona direttamente sul tuo file originale.
Codice: Seleziona tutto
Sub CopyRecord_F3K
oForm = thisComponent.drawpage.forms.MainForm
oColumns = oForm.Columns
dim aData (1,oColumns.count - 1) as Variant
for i = 1 to oColumns.count - 1 'Start at column 1 because Column 0 is the PK Autovalue, would lead to an error
oColumn = oColumns(i)
select case oColumn.TypeName
case "VARCHAR"
value = oColumn.getstring
case "INTEGER"
value = oColumn.getInt
case "TIME"
value = oColumn.getTime
case "DATE"
value = oColumn.getDate
case "DECIMAL"
value = oColumn.getDouble
end select
aData(0,i) = value
aData(1,i) = oColumn.wasNull
next i
oForm.movetoInsertRow
for i = 1 to oColumns.count - 1
oColumn = oColumns(i)
if aData(1,i) = true then 'the column was empty
oColumn.updateNull
else
select case oColumn.TypeName
case "VARCHAR"
oColumn.updatestring(aData(0,i))
case "INTEGER"
oColumn.updateInt(aData(0,i))
case "TIME"
oColumn.updateTime(aData(0,i))
case "DATE"
oColumn.updateDate(aData(0,i))
case "DECIMAL"
oColumn.updateDouble(aData(0,i))
end select
endif
next i
oForm.InsertRow
End Sub
- Allegati
-
- Sala_operativa.odb
- (63.06 KiB) Scaricato 130 volte
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org