検索キーワード
ABAP
SQL
SAP HANA
Code to Data
Code Pushdown
INNER JOIN
GROUP BY
HAVING
ORDER BY
ABAP New open SQL
気まぐれですが、現在お仕事で使っているABAPについて、メモを残していこうと思います。
基本コンセプトとして、「モダンなソース」を書くように心がけようと思っています。
ABAPのバージョンも7.4になったし、
SAP提唱の「Code to Data」「Code Pushdown」(つまり、Databaaeに負荷をかける)を意識します。
私が使っている「ちょっとSQLを試し書きして動かす」ツールを紹介します。
※SAP HANA環境だと、HDB StudioのSQL Consoleが使えるから助かるんだけれど、
→TRCD:DB01っていうのがありますね。
あれ入れるほどでもないし、Non HANA環境だと使えないし、権限設定とかいろいろ...
少しプログラムを改変しました。(20171018)
少しプログラムを改変しました。(20170926)
少しプログラムを改変しました。(20181022)
少しプログラムを改変しました。(20200908)
*&---------------------------------------------------------------------* *& Report Y_SQL_CONSOLE *&---------------------------------------------------------------------* *& *&---------------------------------------------------------------------* REPORT Y_SQL_CONSOLE. *----------------------------------------------------------------------- * GLOBAL VARIABLE *----------------------------------------------------------------------- DATA GDF_SUBRC TYPE SY-SUBRC. *----------------------------------------------------------------------- * CONDITION VIEW *----------------------------------------------------------------------- DATA GDF_CHAR1 TYPE CHAR10. TYPES GTR_CHAR1 LIKE RANGE OF GDF_CHAR1. SELECT-OPTIONS S_CHAR1 FOR GDF_CHAR1. DATA GDF_CHAR2 TYPE CHAR10. TYPES GTR_CHAR2 LIKE RANGE OF GDF_CHAR2. SELECT-OPTIONS S_CHAR2 FOR GDF_CHAR2. DATA GDF_NUMC1 TYPE NUMC08. TYPES GTR_NUMC1 LIKE RANGE OF GDF_NUMC1. SELECT-OPTIONS S_NUMC1 FOR GDF_NUMC1. DATA GDF_NUMC2 TYPE NUMC08. TYPES GTR_NUMC2 LIKE RANGE OF GDF_NUMC2. SELECT-OPTIONS S_NUMC2 FOR GDF_NUMC2. DATA GDF_DATS1 TYPE DATS. TYPES GTR_DATS1 LIKE RANGE OF GDF_DATS1. SELECT-OPTIONS S_DATS1 FOR GDF_DATS1. DATA GDF_DATS2 TYPE DATS. TYPES GTR_DATS2 LIKE RANGE OF GDF_DATS2. SELECT-OPTIONS S_DATS2 FOR GDF_DATS2. DATA GDF_TIMS1 TYPE TIMS. TYPES GTR_TIMS1 LIKE RANGE OF GDF_TIMS1. SELECT-OPTIONS S_TIMS1 FOR GDF_TIMS1. DATA GDF_TIMS2 TYPE TIMS. TYPES GTR_TIMS2 LIKE RANGE OF GDF_TIMS2. SELECT-OPTIONS S_TIMS2 FOR GDF_TIMS2. *----------------------------------------------------------------------- * START-OF-SELECTION *----------------------------------------------------------------------- START-OF-SELECTION. PERFORM START_OF_SELECTION USING S_CHAR1[] S_CHAR2[] S_NUMC1[] S_NUMC2[] S_DATS1[] S_DATS2[] S_TIMS1[] S_TIMS2[] CHANGING GDF_SUBRC. *----------------------------------------------------------------------- * SUBROUTINE *----------------------------------------------------------------------- FORM START_OF_SELECTION USING PIR_CHAR1 TYPE GTR_CHAR1 PIR_CHAR2 TYPE GTR_CHAR2 PIR_NUMC1 TYPE GTR_NUMC1 PIR_NUMC2 TYPE GTR_NUMC2 PIR_DATS1 TYPE GTR_DATS1 PIR_DATS2 TYPE GTR_DATS2 PIR_TIMS1 TYPE GTR_TIMS1 PIR_TIMS2 TYPE GTR_TIMS2 CHANGING POF_SUBRC TYPE SY-SUBRC. *----------------------------------------------------------------------- * Please write the SQL statement here ☆ * Set the internal table to be stored to LDT_DATA ☆ * Inline definition of LDT_DATA is fun ☆ SELECT FROM T001 FIELDS * INTO TABLE @DATA(LDT_DATA). *----------------------------------------------------------------------- TRY. CL_SALV_TABLE=>FACTORY( IMPORTING R_SALV_TABLE = DATA(LDO_ALV) CHANGING T_TABLE = LDT_DATA ). CATCH CX_SALV_MSG INTO DATA(LDX_SALV_MSG). POF_SUBRC = 8. RETURN. ENDTRY. LDO_ALV->GET_FUNCTIONS( )->SET_ALL( ). LDO_ALV->GET_COLUMNS( )->SET_OPTIMIZE( ). LDO_ALV->GET_SELECTIONS( )->SET_SELECTION_MODE( EXPORTING VALUE = IF_SALV_C_SELECTION_MODE=>CELL ). LDO_ALV->DISPLAY( ). POF_SUBRC = 0. ENDFORM.
おまけ
息苦しいほどタイトな演奏です。
Brian Culbertson- Back in the Day & So Good
検索キーワード
ABAP
ABAP 7.4
ABAP 7.40
ABAP 7.5
ABAP 7.50
SQL
Open SQL
New Open SQL
SAP HANA
Code to Data
Code Pushdown
以上
Windows10無償アップグレード期間終了後
日付が変わったので昨日(2017/2/26)
Windows8.1Pro→Windows10Proの無償アップグレードに成功しました。
手順
Windows8.1Proプレインストール環境にて
A:オンラインアップグレードにてWindows10Proインストール
B:インストール後ライセンス認証済みを確認
C:Windows10ProインストールUSBメモリにてクリーンインストール
→SSD内データをパーティションごとすべて削除後クリーンインストール
D:インストール後ライセンス認証済みを確認
少し古いウルトラブックWithタッチパネルにインストールしたところ
デバイスドライバは全てWindows10標準に付いてきました。
パフォーマンスは悪くないしOS再構築は楽だし
もくろみ通りでした☆
Apple Magic MouseをWindowsで使う
「Apple Magic MouseをWindowsで使う」
このネタを調べたのですがいろいろ情報が交錯しているようで
現時点の正しい情報を書きます。(試しました)
・誤りの情報
・AppleWirelessMouse.exeまたはAppleWirelessMouse64.exeを
http://www.4shared.com/からダウンロードする必要はないです。
・Bluetooth 更新プログラム 1.0 for Windowsは現在ダウンロード出来ない。
・手順
・「Boot Camp サポートソフトウェア」の最新版を以下よりダウンロード
https://support.apple.com/ja_JP/downloads
「製品別」をクリックして検索キーワードを「bootcamp」にすると簡単に出てきます。
・ダウンロードしたファイルの中に
「AppleWirelessMouse.exeまたはAppleWirelessMouse64.exe」が入っています。
・上記ファイルを使ってドライバインストールします。
Windows10 64bitでMagic Mouseの「ホイール??」も動作しました。
おまけ
日本国内ではほとんど知られていませんが私は好きです。
apple magic mouse windows10
ExcelのStyleを削除する
「ExcelのStyleを削除する」
ネタは沢山ページがあると思いますが
どうせならば一味違うものをということで作ってみました。
下ごしらえ。
以下コードをメモ帳に張り付けて保存する。
出来上がったテキストファイルの拡張子をtxt→vbsに変更する。
使い方。
Styleを削除したいExcelファイルをドラッグ&ドロップする。
複数ファイルをまとめてドラッグ&ドロップしてもOK!
注意点。
まともにエラーハンドリングしていないので
気を付けて使ってください。(笑)
垂れ流しコードです。構造化は気が向いたらします。
使ったよ♪っている奇特な人がいたらコメントくれると嬉しいかな〜◎
よろ〜☆
'----------------------------------------------------------------------- Option Explicit On Error Resume Next Dim Args, Arg Set Args = WScript.Arguments Dim ExcelApp, ExcelBook Set ExcelApp = CreateObject("Excel.Application") Dim Builtins, Builtin Builtins = Array( _ "20% - アクセント 1", "20% - アクセント 2", "20% - アクセント 3", _ "20% - アクセント 4", "20% - アクセント 5", "20% - アクセント 6", _ "40% - アクセント 1", "40% - アクセント 2", "40% - アクセント 3", _ "40% - アクセント 4", "40% - アクセント 5", "40% - アクセント 6", _ "60% - アクセント 1", "60% - アクセント 2", "60% - アクセント 3", _ "60% - アクセント 4", "60% - アクセント 5", "60% - アクセント 6", _ "アクセント 1", "アクセント 2", "アクセント 3", _ "アクセント 4", "アクセント 5", "アクセント 6", _ "タイトル", "チェック セル", "どちらでもない", _ "Percent", "メモ", "リンク セル", "悪い", "計算", "警告文", _ "Comma [0]", "Comma", "見出し 1", "見出し 2", "見出し 3", "見出し 4", _ "集計", "出力", "説明文", "Currency [0]", "Currency", "入力", "Normal", "良い") Dim Style Dim IsBuiltin For Each Arg In Args MsgBox Arg Set ExcelBook = ExcelApp.Workbooks.Open(Arg) For Each Style In ExcelBook.Styles IsBuiltin = False For Each Builtin In Builtins If Builtin = Style.Name Then IsBuiltin = True Exit For End If Next If IsBuiltin = False Then Style.Delete End If Next ExcelBook.Close Next MsgBox "処理終了" '-----------------------------------------------------------------------
excel style 削除
dyson DC16 motorhead リニューアルする(前編)
多分5年以上前に購入しました〜◎
dyson DC16 motorhead
http://kakaku.com/item/21301010708/
dysonのコードレスモデル初代ということで〜
相変わらず白い粉も取れるし気持ちよく使っているのですが〜
2世代目以降のDC30/31/34/35/45の特に〜
ロングパイプが気になりつつ年月が経過しました〜○
先日...Amazonを何気なく巡回していると〜
こんなものを見つけました〜◎
【並行輸入品】Dyson(ダイソン) DC35 ロングパイプ
http://www.amazon.co.jp/o/asin/B007UMKASI
当たり前なのですが〜2世代目以降しかポン付けは出来ないんですよ〜△
しかしながら〜Dyson Extension hoseとなると〜
対応機種にDC16も含まれるんです◎
http://www.amazon.co.jp/o/asin/B009NP3QRC
そんなわけで〜Dyson(ダイソン) DC35 ロングパイプは〜
少なくともパイプ径や結合の仕組みは同一なのではとの結論に達し〜
注文してみました〜◎
...
ん〜予測はしていましたが〜ポン付けは出来ませんでした〜△
しかしながら〜motorhead用電源供給コネクタが干渉して使えないだけなので〜
DC16 motorhead本体のmotorhead用電源供給コネクタカバーを〜
止めているヘキサネジを外せば〜
DC35 ロングパイプ側は加工なしで接続できました〜◎
当然ですが〜DC16 motorheadに付属するmotorheadは使えません△
コンビネーションツールや隙間ノズルは普通に使えます◎
DC16(motorhead無しだったらポン付け可能と思います)
あとは〜バッテリーのへたりを何とかしたいなぁ〜○