1  |  2  |  3  |  4  |  5    次>    最後>>

関空夏祭り2010

テーマ:ブログ
明日は関空夏祭り2010です。

紀州逸品堂として関空夏祭り2010の逸品縁日に出店します。

当日はアンケートにご協力いただいた方に、
国際味覚審査機構で3つ星を取得した「生梅ジャム」と、
同2つ星を取得した梅シロップ付け「梅ドボン」をプレゼントします。

販売予定の商品は次の通りです。

・2010年モンドセレクションで最高金賞を取得した梅シロップ。
・2010年モンドセレクションで最高金賞を取得した梅シロップで作った梅ジュース。
・今話題の梅エキス。
・とってもおいしい梅干( 梅かつお、はちみつ梅 )
・熊野牛カレー ( 熊野牛がごろっと )
・カキ氷 (梅シロップもあるよ )
・いろんな味のこんにゃく( 食べるとこんにゃくのイメージが変わるよ。 )
・和歌山ラーメン
・その他いろいろ

なかなか素敵なラインナップでしょ。
イイ!と思ったら拍手をお願いします↓
0

龍神ごおら祭りに向けてサイネージ(電子看板)を準備中

テーマ:インターネットのお勉強
ごぉら祭りに向けてサイネージを準備中です。

弊社(有限会社ハニリイト)と株式会社SPで共同開発したサイネージシステム HSP-01 に、特製スタンドと32インチ液晶を組み合わせました。


(左上のタバコはサイズ比較用)

32インチはデカイぜ。
イイ!と思ったら拍手をお願いします↓
0

龍神ごおら祭

テーマ:ブログ
龍神ごおら祭に、うちの会社で運営している紀州逸品堂も参加させていただく事になりました。

龍神ごぉら祭
日時:8月22日(日) 10:00 ~ 15:00
場所:宮代キャンプ場 ( 和歌山県田辺市龍神村宮代 )
主なイベント
・鮎のつかみ取り&鮎の塩焼き (先着200名 参加費1000円)
・ごぉらレース
・大ビンゴゲーム
・川の生態教室
・グランドゴルフ
・布ぞうりつくり (参加費1000円)
・新聞紙で動物をつくろう (参加費200円)
・飲食コーナー・特産品みやげ物販売コーナー等多数

「ごぉら」というのは龍神の言葉で河童の事だそうです。
同じ田辺市でも、私の住んでいる秋津は龍神からだいぶ離れているので、「ごぉら」という言い方は初めて知りました。

イイ!と思ったら拍手をお願いします↓
5

SQLをVBで扱う。(2)

テーマ:Windows
前回の記事:SQLをVBで扱う。(1)

ここまでで、VB上ではただの文字列として処理されていたSQLが、
関数という形で意味を持つものになりました。
しかしまだ不完全です。数式がただの文字列のままです。

そこで数式クラスを作成し、オペレータオーバーロードを使用することにより、
VBでの数式をSQLの数式に変換します。論より証拠でコードを示します。

 Class Expr
  Dim s As String = ""

  Public Sub New(ByVal s As String)
   Me.s = s
  End Sub

  Public Shared Operator +(ByVal a As Expr, ByVal b As Expr) As Expr
   Return New Expr(String.Format("{0} + {1}", a.s, b.s))
  End Operator
 End Class

 Dim a as New Expr("a")
 Dim b as New Expr("b")
 Dim c as Expr = a + b '← ここ!!

 Debug.Print(c.s)

上記コードを実行すると
 a + b

が出力されます。つまり、"a + b" と言うコードから "a + b"と言う文字列が生成された訳です。

ただ、このままではいちいち New したりと使い勝手が良くありません。
そこで、暗黙の型変換を使用して記述をしやすくします。
Class Expr
  Dim s As String = ""

  Public Sub New(ByVal s As String)
   Me.s = s
  End Sub

  Public Shared Operator +(ByVal a As Expr, ByVal b As Expr) As Expr
   Return New Expr(String.Format("{0} + {1}", a.s, b.s))
  End Operator

  Public Shared Widening Operator CType(ByVal s As String) As Expr
   Return New Expr(s)
  End Operator

  Public Shared Widening Operator CType(ByVal s As Integer) As Expr
   Return New Expr(s.ToString)
  End Operator

  Public Shared Widening Operator CType(ByVal e As Expr) As String
   Return e.s
  End Operator
 End Class

 Dim a as New Expr("a")
 Debug.Print(a + "b") '← ここ!!

String及びIntegerはExprオブジェクトに自動で変換される様になりました。
また、Exprオブジェクトは自動で文字列に変換される様になりました。
結果、より素直な記述が可能になりました。

Exprクラスが出来たことにより、VBでの数式から「数式の文字列」を生成する事が出来るようになりました。

先に作成したSQLクラスと組み合わせて、最初のSQLを記述してみます。

  Dim estimateCusId As New Expr("見積.顧客ID")
  Dim CusId As New Expr("顧客.顧客ID")
  Dim money As New Expr("見積詳細.金額")
  Dim estimateId As New Expr("見積.見積ID")
  Dim detailId As New Expr("見積詳細.見積ID")

  q = New SQL
  q.Select("見積ID", "顧客名", money.Sum())
  q.From("見積")
  q.Join("顧客", estimateCusId = CusId)
  q.Join("見積詳細", estimateId = detailId)
  q.Where(estimateId >= 100 And money >= 0)
  q.GroupBy("見積ID", "顧客名")
  q.Having(money.Sum >= 100)

  Debug.Print(q)


元はただの文字列であったSQLが、見事にVBのコードと化しました。
と同時に、VBとSQLの両方を知っている人でも、内容を理解しづらいコードとなりました(笑)。

最後に、SQLクラスとExprクラスの全コードを掲載しておきます。

 Class SQL
  Dim s As String = ""

  Public Sub New()

  End Sub

  Public Sub New(ByVal s As String)
   Me.s = s
  End Sub

  Public Function [Select](ByVal ParamArray arg() As String) As SQL
   Me.s &= " Select " & String.Join(",", arg)
   Return Me
  End Function

  Public Function From(ByVal arg As String) As SQL
   Me.s &= " From " & arg
   Return Me
  End Function

  Public Function Where(ByVal arg As String) As SQL
   Me.s &= " Where " & arg
   Return Me
  End Function

  Public Function Union(ByVal arg As String) As SQL
   Me.s &= " Union " & arg
   Return Me
  End Function

  Public Function OrderBy(ByVal arg As String) As SQL
   Me.s &= " Order By " & arg
   Return Me
  End Function

  Public Function Join(ByVal t As String, ByVal expr As String) As SQL
   Me.s &= " Join " & t & " on " & expr
   Return Me
  End Function

  Public Function GroupBy(ByVal ParamArray arg() As String) As SQL
   Me.s &= " Group By " & String.Join(",", arg)
   Return Me
  End Function

  Public Function Having(ByVal arg As String) As SQL
   Me.s &= " Having " & arg
   Return Me
  End Function

  Public Shared Widening Operator CType(ByVal a As SQL) As String
   Return a.s
  End Operator
 End Class

 Class Expr
  Dim s As String = ""

  Public Sub New(ByVal s As String)
   Me.s = s
  End Sub

  Public Shared Operator +(ByVal a As Expr, ByVal b As Expr) As Expr
   Return New Expr(String.Format("({0} + {1})", a.s, b.s))
  End Operator

  Public Shared Operator -(ByVal a As Expr, ByVal b As Expr) As Expr
   Return New Expr(String.Format("({0} - {1})", a.s, b.s))
  End Operator

  Public Shared Operator =(ByVal a As Expr, ByVal b As Expr) As Expr
   Return New Expr(String.Format("({0} = {1})", a.s, b.s))
  End Operator

  Public Shared Operator <>(ByVal a As Expr, ByVal b As Expr) As Expr
   Return New Expr(String.Format("({0} <> {1})", a.s, b.s))
  End Operator

  Public Shared Operator >=(ByVal a As Expr, ByVal b As Expr) As Expr
   Return New Expr(String.Format("({0} >= {1})", a.s, b.s))
  End Operator

  Public Shared Operator <=(ByVal a As Expr, ByVal b As Expr) As Expr
   Return New Expr(String.Format("({0} <= {1})", a.s, b.s))
  End Operator

  Public Shared Operator And(ByVal a As Expr, ByVal b As Expr) As Expr
   Return New Expr(String.Format("({0} and {1})", a.s, b.s))
  End Operator

  Public Function Sum() As Expr
   Return New Expr(String.Format("sum({0})", Me.s))
  End Function

  Public Shared Widening Operator CType(ByVal s As String) As Expr
   Return New Expr(s)
  End Operator

  Public Shared Widening Operator CType(ByVal s As Integer) As Expr
   Return New Expr(s.ToString)
  End Operator

  Public Shared Widening Operator CType(ByVal e As Expr) As String
   Return e.s
  End Operator
 End Class

注意!!
この記事を参考にコードを書いて上司に叱られても、当方は一切関知しません。

イイ!と思ったら拍手をお願いします↓

0

紀州逸品堂オープン

テーマ:インターネットのお勉強
以前から準備していたショッピングサイトがオープンになりました。

紀州逸品堂
逸品堂製品

現在の取扱い商材は、梅干・梅エキス・梅ジャム・梅シロップなどです。

今後は取扱い商材を増やしていき、和歌山の逸品を全国に販売して行きます。

紀州逸品堂
イイ!と思ったら拍手をお願いします↓
3
1  |  2  |  3  |  4  |  5    次>    最後>>

プロフィール

すかぽん

すかぽん

有限会社ハニリイトの中田聡です。

スカイラインとLinuxを愛するITベンチャー屋。
FreeBSDでルータを作ったり、Windowsアプリを作ったりして糊口をしのいでいます。

秋津のスミッコで活動中。

性別
男性
誕生日
1975年06月30日
都道府県
和歌山県

最近の記事一覧

フリースペース1

Twitter / narrowband1919
外部リンク


紀州逸品堂梅干・梅エキス・梅ジャムなど和歌山の名産品を直送します。


熊野の里 株式会社冷凍めはり寿司、高菜、梅干の会社です。


マリンテック いつもお世話になっている方の会社。世界中を飛び回っているようです。


紀州紅梅園 いつもお世話になっている梅干屋さん。


ふっくんのブログっぽいサイト 大学時代の同級生。


マニュアルミラー 各種マニュアルミラーサイト


ハニリイト うちの会社です。
?






ユニフォーム ボクシングジム

カレンダー

<<      2012年02月      >>
29 30 31 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 1 2 3

村ぶろランキング

村ぶろバナー

村ぶろ