buongiorno,
devo fare un database x gestire un B&B.
mi interessa trovare il modo per visualizzare la disponibilità delle camere in un determinato periodo.
quello che vorrei è inserire la data di arrivo e la data di partenza, premere il pulsante visualizza e vedere qualli camere sono libere inquel periodo.
vi allego il database che ho iniziato a creare.
grazie
gestire le prenotazioni
gestire le prenotazioni
- Allegati
-
- beb.odb
- (22.94 KiB) Scaricato 193 volte
open office 4.1.2 su windows 8
Re: gestire le prenotazioni
Ho inserito una macro che effettua una query(da testare bene) per ricercare le camere libere del periodo indicato, la query aggiorna il formulario che ho modificato indicando le colonne delle camere.
Per funzionare bisogna registrare il database andando su Strumenti -> Opzioni -> OpenOfficeBase -> Database -> Nuovo-> OK.
EDIT: dB rimosso, da controllare.
Controllato, stranamente va in errore se come data iniziale indico 02/08/2016 con le altre data sembra funzionare.
Potete darmi conferma?
Ciao
Per funzionare bisogna registrare il database andando su Strumenti -> Opzioni -> OpenOfficeBase -> Database -> Nuovo-> OK.
EDIT: dB rimosso, da controllare.
Controllato, stranamente va in errore se come data iniziale indico 02/08/2016 con le altre data sembra funzionare.
Potete darmi conferma?
Ciao
- Allegati
-
- beb.odb
- (24.33 KiB) Scaricato 177 volte
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
Openoffice 4.1.13 su windows 10
Re: gestire le prenotazioni
Ciao Gaetano, confermo il problema con quella data:
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
-
- Volontario
- Messaggi: 379
- Iscritto il: martedì 22 ottobre 2013, 1:35
Re: gestire le prenotazioni
Salve a tutti.
Sto solo cercando di aiutare Gaetanopr, quindi non sto rispondendo al'autore del topic.
Dall screenshot allegato da charlie, posso dire che l'errore è dovuto al fatto che le funzioni Year, Month e Day accettano come argomento una variabile del tipo Date, mentre nel esempio di sotto, loro ottengono come argomento una variabile testuale( string ),è proprio quello che restituisce l'attributo .text del " Campo data 1" -- in poche parole o vedi se l'oggetto ha l'apposito attributo .date ,o la stringa va convertita prima.
Spero di essere stato utile.
Sto solo cercando di aiutare Gaetanopr, quindi non sto rispondendo al'autore del topic.
Dall screenshot allegato da charlie, posso dire che l'errore è dovuto al fatto che le funzioni Year, Month e Day accettano come argomento una variabile del tipo Date, mentre nel esempio di sotto, loro ottengono come argomento una variabile testuale( string ),è proprio quello che restituisce l'attributo .text del " Campo data 1" -- in poche parole o vedi se l'oggetto ha l'apposito attributo .date ,o la stringa va convertita prima.
Spero di essere stato utile.
LibreOffice ultima versione su Windows 10
Re: gestire le prenotazioni
Ma perchè solo con la data 2/8/2016 e non con altre date?
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
-
- Volontario
- Messaggi: 379
- Iscritto il: martedì 22 ottobre 2013, 1:35
Re: gestire le prenotazioni
Confermo di non ricevere nessun errore,sia con la data sopraindicata, che con le altre.
Test eseguito sul LibreOffice, ultima versione.
Test eseguito sul LibreOffice, ultima versione.
LibreOffice ultima versione su Windows 10
Re: gestire le prenotazioni
Buongiorno, grazie per i vari riscontri ricevuti.
@ vladboscaneanu ho provato a passare le variabili di tipo Date e a fare varie conversioni ma niente, la cosa strana è che con altre date tutto funziona tranne con il 02/08/16(non ho provato tutto il calendario)vorrà dire che per il 02/08/16 non si accetteranno prenotazioni .
Comunque ho modificato la macro e ora accetta pure il 02/08/16, usando openoffice non so con libreoffice, dato che il campo data delle due suite sono gestite diversamente .
Ciao
@ vladboscaneanu ho provato a passare le variabili di tipo Date e a fare varie conversioni ma niente, la cosa strana è che con altre date tutto funziona tranne con il 02/08/16(non ho provato tutto il calendario)vorrà dire che per il 02/08/16 non si accetteranno prenotazioni .
Comunque ho modificato la macro e ora accetta pure il 02/08/16, usando openoffice non so con libreoffice, dato che il campo data delle due suite sono gestite diversamente .
Ciao
Codice: Seleziona tutto
Sub ProvaQuery (oEvent As Object) 'Button > Execute > event
oForm = oEvent.Source.Model.Parent 'MainForm from Button
oStatement = oForm.ActiveConnection.createStatement() 'Create an SQL statement object
oForm = oEvent.Source.Model.Parent.Parent
dataaV = Cstr(oForm.getByName("Campo data 1").currentvalue)
datapV = Cstr(oForm.getByName("Campo data 2").currentvalue)
dataarrv = Left(dataaV, 4) & "-" & Mid(dataaV, 5, 2) & "-" & Right(dataaV, 2)
datapartv = Left(datapV, 4) & "-" & Mid(datapV, 5, 2) & "-" & Right(datapV, 2)
sSQL = "SELECT * FROM ""camere"" WHERE NOT EXISTS ( SELECT * FROM ""pren"" WHERE ""pren"".""ncam"" = ""camere"".""n.cam"" AND ( ""dataarr"" < '" & datapartv & "' AND '" & dataarrv & "'< ""datapart"" ) )"
'
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("beb")
QueryDefinitions=DataSource.getQueryDefinitions()
QueryDefinition=QueryDefinitions.getByName("Query1")
QueryDefinition.Command=sSQL
oForm = oEvent.Source.Model.Parent
oForm.reload
end sub
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
Openoffice 4.1.13 su windows 10