■654 |
ASP(VBScript)のServerオブジェクト |
□投稿者/ 超初心者 -(2005/06/21(Tue) 10:59:14)
| 分類:[ASP.NET]
分類:[ASP.NET]
始めまして。 昨日からASP(VBScript)を始めたばかりの超ど素人です。 VBScriptでファイル操作を行おうと思っているのですが、どうもうまくいきません。 サイト/本等で調べてはいるのですが、始めたばかりということもありなかなか 原因がわかりません。 どなたかおわかりの方、お手数ですがご教授お願い致します。
●環境 Windows2000 Professional IIS Ver5.0 IE6.0
●サンプルソース <%@ LANGUAGE="VBScript" %>
|
■651 |
Re[2]: Oracle のsql文について |
□投稿者/ Miya @ -(2005/06/21(Tue) 09:52:51)
| 分類:[VB.NET]
ご回答をありがとうございました。 >gooで回答がついたからといってこちらをうっちゃっていると、 >こちらでは誰も回答してくれなくなりますよ > 元質問者
本当に、反省しております。今後、十分に注意いたします。 今後とも、宜しくお願い致します。
■No648に返信(Jittaさんの記事) > Oracle10gということですから、WHERE句で結合するのではなく、JOINで結合しましょう。これの利点は、結合条件と抽出条件を分離できるところです。元のSQL文を書き直すと、次のようになります。 > > SELECT a.code, a.name, SUM(b.kin), SUM(b2.kin2) > FROM a > INNER JOIN b > INNER JOIN b2 ON b.code2 = b2.code2 > ON a.code = b.code > GROUP BY a.code, a.name > ORDER BY a.code > > しかしこれ、データの主体はB表ですから、B表から取得するようにすると、わかりやすくなりますね。 > > SELECT a.code, a.name, SUM(b.kin), SUM(b2.kin2) > FROM b > INNER JOIN a ON a.code = b.code > INNER JOIN b2 ON b2.code2 = b.code2 > GROUP BY a.code, a.name > ORDER BY a.code > > > > なぜ、教えてGooで断わりも無く、マルチポストをするのですか。 > マルチ"サイト"ポストの悪評を高くするため。 > > gooで回答がついたからといってこちらをうっちゃっていると、こちらでは誰も回答してくれなくなりますよ > 元質問者 >
|
|
■649 |
Re[4]: Oracle のsql文について |
□投稿者/ Miya @ -(2005/06/21(Tue) 09:49:27)
| 分類:[VB.NET]
申し訳ございません。 こちらの質問(例題)が間違っておりました。 本当に失礼なお話なのですが、他のHPで、解決いたしました。 今後とも、宜しくお願い致します。
■No642に返信(夏椰さんの記事) > まずはBテーブルとB2テーブルの連結部分のみ考えて見ましょう。 > > (提示されたものをデータ限定して引用しています) > Bテーブル > A-1 2005/01/01 100 AAA > A-1 2005/01/02 200 AAA > > B2テーブル > AAA 1 1000 > AAA 2 2000 > > をCODE2で連結すると > A-1 2005/01/01 100 AAA 1 1000 > A-1 2005/01/01 100 AAA 2 2000 > A-1 2005/01/02 200 AAA 1 1000 > A-1 2005/01/02 200 AAA 2 2000 > と抽出されるんですよ。 > > なぜかというと BテーブルのCODE2の値に対してB2テーブルに該当するのは2レコードですよね? > ([NO]=[1,2]の2レコードあるので) > なんで、Bテーブルの値は一緒だけどB2テーブルの値が異なる行が2つ表示されるんです。 > > これをGROUP BYで合算すると・・・ > [KIN]=[100+100+200+200]=[600] > [KIN2]=[1000+2000+1000+2000]=[6000] > となってしまうわけです。 > > なんで、300、3000って値がほしいのに、600、6000って値が取れるのは > BテーブルとB2テーブルの結合条件が不足しているからなんです。 > > よって、BテーブルとB2テーブルの結合条件をちゃんと考慮すれば > Miya様が望まれている結果が出るのではないでしょうか?
|
|
■648 |
Re[1]: Oracle のsql文について |
□投稿者/ Jitta -(2005/06/20(Mon) 22:43:22)
| 分類:[VB.NET]
Oracle10gということですから、WHERE句で結合するのではなく、JOINで結合しましょう。これの利点は、結合条件と抽出条件を分離できるところです。元のSQL文を書き直すと、次のようになります。
SELECT a.code, a.name, SUM(b.kin), SUM(b2.kin2) FROM a INNER JOIN b INNER JOIN b2 ON b.code2 = b2.code2 ON a.code = b.code GROUP BY a.code, a.name ORDER BY a.code
しかしこれ、データの主体はB表ですから、B表から取得するようにすると、わかりやすくなりますね。
SELECT a.code, a.name, SUM(b.kin), SUM(b2.kin2) FROM b INNER JOIN a ON a.code = b.code INNER JOIN b2 ON b2.code2 = b.code2 GROUP BY a.code, a.name ORDER BY a.code
> なぜ、教えてGooで断わりも無く、マルチポストをするのですか。 マルチ"サイト"ポストの悪評を高くするため。
gooで回答がついたからといってこちらをうっちゃっていると、こちらでは誰も回答してくれなくなりますよ > 元質問者
|
|
■642 |
Re[3]: Oracle のsql文について |
□投稿者/ 夏椰 @ -(2005/06/20(Mon) 10:58:14)
| 分類:[VB.NET]
まずはBテーブルとB2テーブルの連結部分のみ考えて見ましょう。
(提示されたものをデータ限定して引用しています) Bテーブル A-1 2005/01/01 100 AAA A-1 2005/01/02 200 AAA
B2テーブル AAA 1 1000 AAA 2 2000
をCODE2で連結すると A-1 2005/01/01 100 AAA 1 1000 A-1 2005/01/01 100 AAA 2 2000 A-1 2005/01/02 200 AAA 1 1000 A-1 2005/01/02 200 AAA 2 2000 と抽出されるんですよ。
なぜかというと BテーブルのCODE2の値に対してB2テーブルに該当するのは2レコードですよね? ([NO]=[1,2]の2レコードあるので) なんで、Bテーブルの値は一緒だけどB2テーブルの値が異なる行が2つ表示されるんです。
これをGROUP BYで合算すると・・・ [KIN]=[100+100+200+200]=[600] [KIN2]=[1000+2000+1000+2000]=[6000] となってしまうわけです。
なんで、300、3000って値がほしいのに、600、6000って値が取れるのは BテーブルとB2テーブルの結合条件が不足しているからなんです。
よって、BテーブルとB2テーブルの結合条件をちゃんと考慮すれば Miya様が望まれている結果が出るのではないでしょうか?
|
|
□投稿者/ Miya @ -(2005/06/19(Sun) 11:21:33)
| 分類:[VB.NET]
分類:[VB.NET]
はじめまして。教えてGooで、何度かお世話になりました。 VB.NET & Oracle[10g]で、プログラミングをしております。 Gooでも質問をしたのですが、回答を頂けなく困っております。
Oracl[10g]の SQL文について、教えて下さい。
[A]テーブルに [CODE] と [NAME]フィールドがあるとします。 内容は、 A-1 NAME-1 A-2 NAME-2 A-3 NAME-3 と、します。
[B]テーブルに [CODE] と [NOUKI] と [KIN] と [CODE2] フィールドがあるとします。 内容は、 A-1 2005/01/01 100 AAA A-1 2005/01/02 200 AAA A-2 2005/01/01 300 AAA A-2 2005/01/10 400 DDD A-2 2005/12/10 500 EEE と、します。
[B2]テーブルに [CODE2] と [NO] と [KIN2] フィールドがあるとします。 内容は、 AAA 1 1000 AAA 2 2000 DDD 1 4000と、します。
結果が、 A-1 NAME-1 300[B]テーブルKINの合計 3000[B2]テーブルKIN2の合計 A-2 NAME-2 1200[B]テーブルKINの合計 4000[B2]テーブルKIN2の合計
と、なる様にする為には、どういうSQL文を書けば良いのでしょうか ? つまり、[CODE2]のフィールドを[B2]テーブルに反映させたいのです。
SELECT A.CODE,A.NAME,SUM(B.KIN),SUM(B2.KIN2) FROM A, B, B2 WHERE A.CODE=B.CODE AND B.CODE2=B2.CODE2 GROUP BY A.CODE,A.NAME ORDER BY A.CODE
と、すれば、何故か A-1 NAME-1 600 6000 A-2 NAME-2 1000 7000 と、言う結果がでます。
これは、1つのSQL文では無理なのでしょうか ? よろしくお願い致します。
|
|
■616 |
Re[1]: Windowsアプリにおけるログイン情報の保持方法について |
□投稿者/ 中博俊 @ -(2005/06/15(Wed) 22:19:24) >
|
■618 |
Re[5]: タスクバーの非表示について |
□投稿者/ GOD -(2005/06/16(Thu) 09:41:41)
| 分類:[VB.NET]
> ret = GetWindowPlacement(AppBar_HWnd, Default_WindowPlacement) > New_WindowPlacement = Default_WindowPlacement > ret = SetWindowPlacement(AppBar_HWnd, New_WindowPlacement) > ウィンドウの状態をGetしてそれをNewにコピーして何もしないままNewの値を設定 してますが、本当にVB6なら効果のあるコードなんでしょうか?
|
|
■606 |
Re[3]: タスクバーの非表示について |
□投稿者/ なみ -(2005/06/14(Tue) 20:55:56)
| 分類:[VB.NET]
質問の仕方が悪く、すみませんでした。
本来タスクバーがあるところまでフォームを最大表示したいのです。
> Call ShowWindow(FindWindow("Shell_TrayWnd", vbNullString), SW_HIDE) > Call ShowWindow(FindWindow("Shell_TrayWnd", vbNullString), SW_SHOW)
試してみたのですが、タスクバーのあるところにWindowsのデスクトップが 出てきてしまっていて、フォームが途中で切れてしまうのです。
それで、GetWindowPlacement・SetWindowPlacement関数を使用して タスクバーの高さを0にするようにしたのですが、VB6では正常に実行されるのですが VB.NETではどちらの関数も戻り値「-4294967296」が返ってきて何も起こりませんでした。
AppBar_HWnd = FindWindow("Shell_TrayWnd", vbNullString) Default_WindowPlacement.Length = Len(Default_WindowPlacement) Default_WindowPlacement.flags = 0 Default_WindowPlacement.ptMinPosition.X = 0 Default_WindowPlacement.ptMaxPosition.Y = 0 Default_WindowPlacement.ptMaxPosition.X = 0 Default_WindowPlacement.ptMaxPosition.Y = 0 Default_WindowPlacement.rcNormalPosition.Bottom = 0 Default_WindowPlacement.rcNormalPosition.left = 0 Default_WindowPlacement.rcNormalPosition.Right = 0 Default_WindowPlacement.rcNormalPosition.Top = 0 Default_WindowPlacement.showCmd = 0 ret = GetWindowPlacement(AppBar_HWnd, Default_WindowPlacement) New_WindowPlacement = Default_WindowPlacement ret = SetWindowPlacement(AppBar_HWnd, New_WindowPlacement)
宣言の部分で違う点は構造体のTypeをStructureに変換したところだけです。 この部分が悪いのでしょうか? 初歩的な質問ですみません。 よろしくお願いします。
|
|
■603 |
Re[2]: タスクバーの非表示について |
□投稿者/ GOD -(2005/06/14(Tue) 17:17:07)
| 分類:[VB.NET]
>VB6ではWin32APIを使用していましたが >.NETではうまくいきません。 > どううまくいかないんですか。これだけじゃ誰も分からないですよ。 普通にAPI使用して↓でできませんか? Call ShowWindow(FindWindow("Shell_TrayWnd", vbNullString), SW_HIDE) Call ShowWindow(FindWindow("Shell_TrayWnd", vbNullString), SW_SHOW)
高さ変えるならウィンドウの外形とってMoveWindowとかすればできそうですが。 それともAPI使わないこと前提ですか?
|
|
■625 |
Re[5]: すごく初歩的なことで申し訳ないのですが・・・・ |
□投稿者/ Jitta -(2005/06/16(Thu) 20:01:43)
| 分類:[C#]
■No607に返信(にしざきさんの記事)
> どこのサイト(, ML, netnews, etc)を調べればいいのか知りたいなぁ。 Google等の検索サイトと同じようなことをすればいいのでは?…と思ったので、外しました。
もうひとつ外したものに、『プロバイダーが用意しているスクリプトを、どうやって編集すればいいのでしょう?』というのがあったのですが、“自作CGIの場合”という前提が明白ですから、外すことにしました。 ええ、暗に「編集できないものをどうやって編集するの?」という問いだったのですが、あまりにも意地悪ですから(^-^;
ところで、超初心者ハレンさん。 もし、横槍さん以下の投稿で怖くなったのなら、Web掲示板では日常的なことですので、気にせず、慣れてください。 じゃんぬさんのマルチ"サイト"ポスト云々も、必ず出てくる話です。慣れてください。 そして、マナーの話が出ていますが、質問したまま、というのが一番嫌われる行為ですので、何らかの反応をお願いします。幸い、こちらにはご質問に対する“回答”と呼べるものはついていませんから、AILightの方へお願いします。 http://www.ailight.jp/BBS/Detail.aspx?Header_ID=1557 解決案を提示した者として、その後どうなったのか、知る権利があると主張します。
|
|
■607 |
Re[4]: すごく初歩的なことで申し訳ないのですが・・・・ |
□投稿者/ にしざき -(2005/06/15(Wed) 09:23:42) >
| 分類:[C#]
そもそも、マルチポストと判定できるためにはどこのサイト(, ML, netnews, etc)を調べればいいのか知りたいなぁ。
「初歩的」だし。
|
|
■525 |
Re[5]: Application Updater Component の動作について |
□投稿者/ ken -(2005/06/06(Mon) 20:56:55)
| 分類:[.NET 全般]
こんにちは。
下記のように、懇切丁寧にご教授くださって本当にありがとうございます!!
> 以下のようなコードで出来ませんか? > > private void Form_Load(object sender, EventArgs e){ > //appUpdaterをインスタンス化 > updater = new Microsoft.Samples.AppUpdater.AppUpdater(); > > updater.OnUpdateDetected +=new Microsoft.Samples.AppUpdater.AppUpdater.UpdateDetectedEventHandler(updater_OnUpdateDetected); > > //※1 > updater.AutoFileLoad = false; > updater.ChangeDetectionMode = ChangeDetectionMode.ServerManifestCheck; > > //appUpdater初期化 > updater.Initialize(); > > } > > //更新検知時のイベントハンドラ > private void updater_OnUpdateDetected(object sender, EventArgs e) > { > //明示的にダウンロード開始 > this.updater.DownloadUpdate(); > } > > > > ソース見ましたが、 > サテライトアセンブリを探す処理は、ChangeDetectionModeプロパティがDirectFileCheck, 及びAutoFileLoadプロパティがtrueの場合起こるようです。 > なので、両プロパティを上記のように設定することによってこの問題は避けられるんでないかと思います。 > ChangeDetectionModeがDirectFileCheckの場合の回避方法は私もわかりません。既存のソースのままでは恐らく無理かと。
少し引用するには長いかと思いましたが、ちょっと話の中であったほうがいいと 思いましたので、そのまま引用します。
私が思う標題の回避方法としては、上記のソースから判断するに、 「アセンブリを探し出してダウンロードしようとするロジック自体を 使わない(通らない)ようにする」という認識でよろしいのでしょうか?
いろいろなページを見てきて、この現象に対する回避策は、 @ ダミーファイルで逃げる。 A アセンブリのオンデマンドインストール機能を使用しない。
という回答がほとんどであったと認識しています。
上記のソースは、Aのロジックを通らないようにする方法で宜しいですか?
すいません。頂いた返信をどうこういうのではなく、
今後このコンポーネントを使おうという方々に、きっと判断に役立つ結論、
「Application Updater Component のオンデマンドインストールは使用できるのか 否か」をはっきり(現時点での調査結果から)させておくことが 今後の展開に影響すると考えます。
上記で返信頂いたソースでは、本当に(語弊はありますが)リソース.dllを 使用していた場合は、Application Updater Componentの オンデマンドインストール機能ではなく、他の方法でダウンロードする必要が ありますよね?(間違ってたらすいません。)
|
|
■522 |
Re[4]: Application Updater Component の動作について |
□投稿者/ キタ -(2005/06/06(Mon) 18:36:33)
| 分類:[.NET 全般]
2005/06/07(Tue) 17:56:10 編集(投稿者) 2005/06/06(Mon) 19:18:57 編集(投稿者) 2005/06/06(Mon) 18:45:21 編集(投稿者) 2005/06/06(Mon) 18:39:22 編集(投稿者)
#追記:余計なコードまで書いた上間違ってましたので修正しました。 以下のようなコードで出来ませんか?
private void Form_Load(object sender, EventArgs e){ //appUpdaterをインスタンス化 updater = new Microsoft.Samples.AppUpdater.AppUpdater(); //オンデマンドインストール機能を無効にする。 updater.AutoFileLoad = false; updater.ChangeDetectionMode = ChangeDetectionMode.ServerManifestCheck; //appUpdater初期化 updater.Initialize(); }
ソース見ましたが、 サテライトアセンブリを探す処理は、ChangeDetectionModeプロパティがDirectFileCheck, 及びAutoFileLoadプロパティがtrueの場合起こるようです。 なので、両プロパティを上記のように設定することによってこの問題は避けられるんでないかと思います。 ChangeDetectionModeがDirectFileCheckの場合の回避方法は私もわかりません。既存のソースのままでは恐らく無理かと。
|
|
□投稿者/ はいこーん -(2005/06/03(Fri) 13:59:24)
| 分類:[ASP.NET]
■No496に返信(naoさんの記事) > ASP.net(VB) で開発を行っております。 > 数字のみの入力で書式[#,##0]となるようなテキストボックスを作成したいのですが、 > よくわかりません。 あきらめましょう。 ASP.NETでクライアント側の文字を制御しようとするとJavaScriptの嵐になります。 JavaScriptは切ることだってできますし、どうせサーバ側のチェックも必須なのですから。 サーバ側に一任した方がよいと思う。
|
|
□投稿者/ nao -(2005/06/03(Fri) 13:56:36)
|
■466 |
Re[3]: バッチビルドが使用できるタイミング |
□投稿者/ 中博俊 @ -(2005/05/30(Mon) 14:35:59) >
|
□投稿者/ ken -(2005/05/30(Mon) 11:06:14)
| 分類:[.NET 全般]
分類:[.NET 全般]
こんにちは。
VB.NET初心者のkenと申します。 ついこの間もクラスライブラリについて質問させて頂きました。 明快な回答を頂き本当によかったです。
さて、また質問なのですが、皆様はVS.NETで開発されたソースを リビルドされる際に、各プロジェクトフォルダの下にできるbinフォルダ と、objフォルダを削除したいときには、バッチビルドを利用されて いますか?
当方、現状クラスファイルのアセンブリ名を見直し中でして、 ソリューションエクスプローラ内で名称を直して、エクスプローラから プロジェクトフォルダ内のbin,objフォルダを削除、リビルドを行って おりますが、開発が進むにつれて面倒になってきました。
そこで調べたところ、バッチビルドという機能を使えば、「クリーン」 というオプションがあって、bin,objフォルダの削除をしてくれるという を知り、ツールバー -> カスタマイズ画面を開いて、ビルドメニューに バッチビルドを表示するまでには至りましたが、グレーアウトしている 状態で一向に使用可能になりません。
つきましては、バッチビルドを利用されている方々、どうか使用可能にする 方法をご教授願えませんでしょうか?
何卒、宜しくお願い致します。
------ ken
|
|
□投稿者/ emigenn -(2005/05/28(Sat) 21:17:54)
| 分類:[VB.NET]
分類:[VB.NET]
ビットパターンを反転する方法に付いての質問です。 01001010 --> 01010010
1.ビットパターンを反転する方法に付いて試行錯誤しているのですがヘルプ等で、Array.Reverseがパターン反転する方法との事で下記の手順で試していますがArray.Reverseを使わなくても反転しているようなのです、何処で反転しているのでしょうか??
Public Function BitMirror(ByVal bd() As Byte) As Byte() Dim ba As New BitArray(bd) Dim myArray As Array = Array.CreateInstance( _ GetType(Boolean), ba.Length) ba.CopyTo(myArray, 0) 'Array.Reverse(myArray) '<---Reverseしなくても反転している
2.上記 myArray As Array からバイト配列への変換方法は?? 一バイトに限定すれば何とか出来ているのですが、myArrayが長い時に効率的に変換するアイデアが浮かびません。
調べ方がタラン!!、と怒られそうですが宜しくお願いします。
|
|
■444 |
Re[1]: VB.NetでExcelデータのセルの値が取得したい |
□投稿者/ Hik -(2005/05/24(Tue) 20:20:20)
| 分類:[VB.NET]
> If xlSheet.Cells._Default(1, 1) = "" Then
何がしたいのかがよくわからない質問でしたね^^;
VBのツールにより、xlSheet.Cells._Default(1, 1) という記述に変換されましたが、 結局はエクセルのセルの値を取得するのには、どう記述すれば取得できるのかが知りたいのです。 「xlSheet.Cells._Default(1, 1)」だけでは、値が取得できません。
|
|
<前の20件
| 次の20件>
<<
0
| 1
| 2
| 3
| 4
| 5
| 6
| 7
| 8
| 9
| 10
| 11
| 12
| 13
| 14
| 15
>>
ヒット件数が多いので過去ログ1〜3 までの検索結果 / 過去ログ4からさらに検索→
パスワード/
|