BaseでエクセルのVLOOKUPのような機能をフォームで使いたい エラーが発生(続)

classic Classic list List threaded Threaded
2 messages Options
福永ケンセイ 福永ケンセイ
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

BaseでエクセルのVLOOKUPのような機能をフォームで使いたい エラーが発生(続)

回答ありがとうございます。
エラーが発生してしまいます。
どなたか教えていただきたいのですが。


以下の手順でテーブル、フォームを作成しました

テーブルですが
フィールド名 フィールドタイプ
ID 整数[INTEGER]
商品名 テキスト[VARCHSR]
単価 整数[INTEGER]
上記で設定しました。

フォームは
1)デザイン表示でフォームを作成を選択
2)テキストボックスを選択し二か所にテキストボックスを設置
3)右クリック フォームの属性から名前を「form」に変更
4)右クリック 属性テキストボックス 全般の名前をtextbox1~2に変更
4)右クリック 属性テキストボックス イベントからフォーカスを失った時を選択し「マクロ」クリックしてマクロ表示
上記の手順で作成しました

メールをいただいて以下実行してみました。

msgbox "sSql = "& sSql

ThisDataBaseDocument.DataSource.getconnection("","").createstatement.executequery(sSql)
の前に置いて、Baseからform上のtextbox1に1などIDを入れてEnterを押してみてください。

A)
以下実行してみました。

 sSql ="select ""商品名"" from ""t_test"" where ""ID"" =  '" &
oForm.getByName("textbox1").text & "';"
         msgbox(sSql) <----ここに追加
        oResult =
ThisDataBaseDocument.DataSource.getconnection("","").createstatement.executequery(sSql)

B)
結果
以下のような表示が出ました
select "商品名" from "t_test" where "ID" =  '1';

C)
このSQL文を
マイマクロ&ダイアログが開いた状態
データーフォームのtextbox1に「1」が入った状態で
フォームを選択し下記SQLを実行しました。

select "商品名" from "t_test" where "ID" =  '1';

結果
1: Wrong data type: java.lang.NumberFormatException: For input string: "1
"
上記結果となりうまくいきませんでした。
バージョンはバージョン: 5.2.6.2です
データーベースエンジンは埋め込みHSQLです

--
Unsubscribe instructions: E-mail to [hidden email]
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/ja/users/
All messages sent to this list will be publicly archived and cannot be deleted
志義ゼミ 志義ゼミ
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [ja-users] BaseでエクセルのVLOOKUPのような機能をフォームで使いたい エラーが発生(続)

福永様。

大変重要なことを書き忘れていました。
私が作ったテーブルt_testのデータの型はすべてvarcharです。

data type で、NumberFormatExceptionの数値に対する例外が発生していることから
IDは整数値ではなくString型として認識されてるようです。

もし、可能であれば、テーブルのIDの方をvarcharに変えて再度実行してみてはどうでしょうか。

以上

On 2017年04月07日 20:56, 福永ケンセイ wrote:
> 結果
> 1: Wrong data type: java.lang.NumberFormatException: For input string: "1
> "



--
/////////////////////////////
志義どっとPC
(志義ゼミナール)
堀 正和
〒838-0141
福岡県小郡市小郡630-62
TEL/FAX:0942-73-1710
直通(堀):090-8379-6113
/////////////////////////////


--
Unsubscribe instructions: E-mail to [hidden email]
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/ja/users/
All messages sent to this list will be publicly archived and cannot be deleted
Loading...