LO 7.1,
Bonjour,
j'ai glâné autant d'infos possible et ne trouve pas de soutien sur mon probleme, meme sur ask.libreoffice. j'ai démarré le projet il y a une semaine (et donc j'apprends sur le tas le basic libre office)
J'ai deux tables de structure différentes, la première est la source de données et contient le champs déterminant la condition de copie des valeurs vers des champs d'une autre table. ensuite( quand déjà ceci fonctionnera, il me faudra supprimer les enregistrements de la table source. Il sagit d'une simple gestion d'inventaire avec mise au rebus. les seules façon d'y arriver sont semble t'il les commandes SQL par macro.
j'ai obtenu ceci, mais n'ai pas assez de recul SQL pour résoudre le probleme de message d'erreur très imprécis que je reçois.
SYNOP:Erreur d'exécution BASIC.
Une exception s'est produite :
Type: com.sun.star.sdbc.SQLException
Message: Wrong data type: java.lang.IllegalArgumentException.
INSERT INTO table2 (column1, column2, column3, ...)
SELECT column1, column2, column3, ...
FROM table1
WHERE condition;
merci de m'aider à résoudre le probleme et rendre enfin fonctionel la commande SQL sous libre office.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Sub Move_OutofInventory() Dim oStatement As Object Dim StrTime as string Dim StrSQL as string if IsNull(ThisDatabaseDocument.CurrentController.ActiveConnection) then ThisDatabaseDocument.CurrentController.connect endif oStatement = ThisDatabaseDocument.CurrentController.ActiveConnection.createStatement() StrTime = Format(now(),"D/MM/YY") strSQL ="INSERT INTO ""TAB_SORTIE_INV"" (""TYPE"", ""SERIE_DU_TYPE"",""MARQUE"",""DATE_ACHAT"",""BUDGET_ACHAT"",""SERIAL"",""DATE_SORTIE_INV"") SELECT ""TYPE"", ""SERIEduTYPE"",""MARQUE"",""DATE_ACHAT"",""BUDGET_ACHAT"",""SERIALNUMBER"",'"+ StrTime +"' FROM ""TAB_INVENTAIRE"" WHERE ""ASortirDeLinventaire"" = true" oStatement.execute(StrSQL) End sub
Partager