2013年12月12日木曜日

GoogleDriveオフライン

GoogleDriveオフライン


これは、もう便利です!

2013年9月19日木曜日

ExcelのCtrl+矢印

表題の通りです。

Ctrl+矢印キーで、カーソルの移動が劇的に便利になります。

えぇ、最近知りました。。。

Googleドキュメントのスプレッドシートも同様です。


2013年9月1日日曜日

レガシーアプリ健在なり

I added the functionality to an application of vb6.



久しぶりにVB6のコードを書きました。
アプリというかデータを登録するツールです。作業コストを抑えるための新機能追加です。

VB6で作成したものですが、ActiveXコントールを使用しているということもあり、新しいプラットフォームに載せ替えるコストを考えると現状をメンテナンスしていくのがベターです。

このようにまだまだ現役でがんばっているVB6もあるのです。

2013年8月17日土曜日

SEIKO5

長年愛用していたブラックモンスターが壊れてしまいました。
秒針がひっかかっています。(落としてしまったのが原因かも・・・)
オーバーホールも考えましたが、修理費用が本体価格と同じくらいになるので見送ることに。
ずっと使おうと思っていたので残念です。今までありがとう。


そして入手したものはまたもやセイコーです。セイコー5です。
文字盤が茶色で落ち着いた感じです。

2013年8月15日木曜日

XPS m1330 インバータ

いよいよ画面が真っ暗。
長時間のドライブによるものなのか、車中での熱なのか、そもそも寿命なのか。。。

現象を確認してみると、
外部ディスプレイには正常に表示できる
 →グラフィックボードではない(と思われる)
バックライトが2本同時に切れるとは思われない。

ということから、インバータかな、ということで型番確認のため分解。


6632L-0430A

念のため、コネクタをグリグリ押し込み電源投入。
すると画面に表示されるDELLのロゴ!

復活しました^^

2013年8月10日土曜日

ミニトマト

I'm harvesting tomatoes!

ミニトマトなんだけれども、あんまり”ミニ”じゃないw


2013年8月4日日曜日

Gitでファイルを元に戻す

In Git, I return to the original file.

Gitでファイルを元に戻すとき、
普通にチェックアウトするのですね。

元に戻します。




NetBeans+Gitの例

2013年7月28日日曜日

PHP、継承されたメソッドが呼ばれる子クラス

Child class to which the method of PHP, inherited is called.

デバッグするとき、継承されたメソッドがどの子から呼ばれているか調べたいときがあります。
タイミングとかいろいろと。
子クラスの継承メソッド呼んでるところをチェックするよりも、
親クラスのメソッドで、

get_class($this)

とすると子クラス名がわかるよ。

継承したメソッドを読んでいる小クラスのメソッド名がわかればもっといいですね。

2013年7月25日木曜日

cakephp と MySQL の tinyint(1)

MySQL の tinyint(1) にデータを登録するとき、
$model->save() すると、0 以外は 1 で登録される。

データ読み込みのテストで、直接 2 をセットし、findすると当該フィールド値が 1 となっている。

CakePHPの仕様とのこと。
以前にもハマって思い出したので備忘録として。

2013年7月4日木曜日

VistaのODBC接続設定

ODBC connection settings for Vista

WindowsVistaです。えぇ。
コントロールパネルにODBC接続の設定が見つかりません><

スタートボタンを押下し、「検索の開始」というところに"ODBC"と入力します。
すると、なにやらODBC関連のプログラムが表示されます。


 データソース(ODBC)を選択します。
見慣れたダイアログが表示されます。


「追加」ボタンを押下してどんどん進めていきます。MySQLのODBCが登録済みですね。



混合認証です。




完了しました。


「データソースのテスト」で接続確認をおこないます。
無事に完了しました^^


「SQL Server Native Client 100」が追加されました。


この「ODBCデータソースアドミニストレータ」を見つけるのが一番時間がかかりました。



SQL Server2008の型変更

前回のエントリー関連です。

前回、SQL Server 2000 での型変更は無事できました。
しかし、検証できる環境が欲しいのでSQL Server 2008 のExpress版をセットアップし、そこでフロントエンドのデバッグをしたいと思います。

SQL Server 2008のインストールは
http://awoni.net/fc/vista-sql-server-settings/
を参考にしました。

変換したデータのバックアップが今手元にないので変換前のものを利用します。
SQL Server2008にアタッチします。OK!
SQL Server Management Studio でテーブルのデザインを開き、型を変更します。
エラーがでます。ここは想定内。

テーブル 'xxxxx'
- テーブルを修正できません。
テーブル 'dbo.xxxxx' を 削除 できません。レプリケーションに使用されています。
そこで、sp_removedbreplication を実行します。
メッセージは、正常に終了とでます。

再度、テーブルのデザインを開き、型を変更します。
また同じエラー!なぜ???想定外です。

SQL Server2008 の場合、レプリケーションがあっても ALTER文で変更できるということですので

alter table [対象テーブル名] alter column [対象フィールド名] int;
を実行します。OK!
フィールドの型変更はできましたが、ゴミ?となっていると思われるレプリケーションの削除ができていないようです。
今回の目的は、フィールドの型変更なのでとりあえずこのままにしておきます。


2013年6月30日日曜日

ゴミ?になったパブリケーションの削除

Publication that became garbage.

SQL Server 2000 です。
データフィールドの型(サイズ)を変更するためにパブリケーションの再作成が必要です。EnterpriseManagerの機能を利用してパブリケーション削除を試みましたが削除できません。困った。



コマンドならと思い検索検索。
sp_dropsubscliption, sp_droppublication などなどでもダメでした。

いろいろとトライした結果、sp_removedbreplication というコマンドを発見!サクッと削除できました。スッキリ!

http://msdn.microsoft.com/ja-jp/library/ms188734(v=sql.105).aspx
sp_removedbreplication [ [ @dbname = ] 'dbname' ][ , [ @type = ] type ]


 SQL Server2000をインストールできるのはWindowsXP(開発環境)までです。
フロントエンドをAccess2000、ODBCでSQLServer2000へ接続、という環境は実は結構多いのではないでしょうか?


2013年6月22日土曜日

三次ワイナリー

三次市での打合せ、待ち合わせは三次ワイナリー。
ワインの試飲はできないですね(^^;
バーベキューのいい匂いがたまりません!


chromeでフォーカスが外されるとき

chromeでフォーカスが外れてしまう時の対応

$("セレクタ").focusout(function() {
  settimeout(function() {
    $("セレクタ").focus();
  }, 0);
});

2013年6月19日水曜日

PhotoRec

データサルベージ なう。。。


各種リカバリソフト、WindowsPE、1CD Linux などなど試しましたがうまくいきませんでした。
パーティション情報が消えているようです。
1回スキャンするだけで4時間とかかかってました。

今回はうまくいっているようです。

Estimated time to completion 10h01m53 ・・・・ じゅ、10時間!?


2013年6月16日日曜日

収穫

先週、庭で収穫したタマネギ、小ぶりですがイイ感じです。


Happy Harvesting & Programming !

2013年5月19日日曜日

バックライト

バックライトの調子が悪く、ついに画面が真っ暗になって久しいメインマシン。
外部モニタを接続して使用していました。
以前分解したことがあるので、組み方が悪かったのかもと思い、時間がとれた今日、再度分解してみました。

前回同様DELLのサポートにあるサービスマニュアルを参考にします。
ftp://ftp.dell.com/Manuals/all-products/esuprt_laptop/esuprt_xps_laptop/xps-m1330_service%20manual_en-us.pdf


ディスプレイ周りもバラして、再度組み直します。仮組でディスプレイの確認です。
おお!なおった!

接触不良だったようです。
まだまだ現役です!

このマシン、キーボードがとても自分に合っているのでなかなか手放せません^^

2013年4月21日日曜日

VxEditor

メインで使用しているテキストエディタです。
フリーです。軽量です。

Grepついてます!!

そして今日もログをGrep!



VxEditor - Vecor

2013年4月9日火曜日

MySQL 文字コード

MySQL で使用する文字コードですが、検索条件に

WHERE name COLLATE utf8_unicode_ci LIKE '%コード%'

とした場合、「コード」「コート」などがヒットします。


WHERE name COLLATE utf8_general_ci LIKE '%コード%'

とした場合、「コート」はヒットしなくなります。


どちらがどうということではなくて、要件によりますね。
全角・半角・ひらがな・カタカナ・大文字・小文字を同一視して検索したいときは
utf8_unicode_ci
が便利ですし・・・


2013年3月22日金曜日

Google Keep

Google Keep です。現在、ファビコンが”!”ビックリマークです^^


さて、どんなことに利用できるのでしょうか。

GoogleDriveということは、「共有」もできるようになるのかな。

遠隔でのカード使ったブレストとかできそう。KJ法?

LINEのような使い方もできるかも。しかもすべてログになるし。。。


終わるサービスあれば始まるサービスあり。

2013年3月17日日曜日

JINS PC

JINS PC です。


ポップな色です^^


さてどんな感じでしょうか。楽しみです。


2013年3月16日土曜日

ADODBでE_FAILなとき

レガシーシステム健在なり!えぇVB6です。
これまで何年も安定して動作していたシステムがエラーになるという報告を受けました。
さて、デバッグしてみますと、以下のようなエラーと判明

「データプロバイダまたはほかのサービスが、E_FAIL 状態を返しました。」


なんのことやら…


mlng_RecordCount = adoRS.RecordCount ←ここでエラーです。


まず疑うのは、データですね。

がしかしよくわかりません。

ネットでは「日付型」がキーのようですが、「日付型」は使用していませんし・・・

いろいろ調べていると


adoRs.CursorLocation = adUseClient

カーソル、これがどうやら原因のような記事がありました。
これをサーバカーソルにしてみると、あら不思議!


adoRs..CursorLocation = adUseServer



問題が解決したような感じがしますが、結果オーライなので
気持ち悪いです。

MDACのバージョンか?
http://support.microsoft.com/kb/301202/ja

レジストリキーはこちら
HKEY_LOCAL_MACHINE\Software\Microsoft\DataAccess\FullInstallVer

バージョンは、6.0.6002.18005 です。

MDAC は2.8までで、vista以降 Windows DAC となりバージョンは6へ!

これも違う。

そしてやっとわかりました!!!

フィールドの型が変更されていました。orz

従来の型に直すと問題なく動作します。
カーソルタイプも従来のままです。
ここはインパクト大なのでさわらずにフィールド型を従来にあわせる方法をとることにします。

原因特定できてよかったよかった^^

2013年3月14日木曜日

確定申告

はじめての確定申告が完了しました。
(医療費控除は経験あったのだけれども)

複式簿記、考えたひとスゴイ!

仕入や在庫がないので簡単な方みたいなのだけれども、売掛で現金回収したときなどの仕訳などがよくわかりませんでした。

そして、税務署。

まず駐車場が長蛇の列!

領収書の添付方法などを教えて頂いて提出。

次はe-taxに挑戦!か?

2013年2月20日水曜日

radiko

radiko愛用しております。

「ラジオNIKKEI第一」の「My Songs」22:30-23:30で今「吉川晃司」の特集です!
先日は「COMPLEX」やってました。

ノンストップです。

http://www.radionikkei.jp/


2013年2月19日火曜日

2013年2月2日土曜日

jQueryでボタンの2度押し防止

ボタンの2通しを防止する方法はいろいろあると想います。
今使っているのはこんな感じです。

$("button").prop("disabled", true);

$("input[type='submit'].prop("disabled", true);



↓こちらと合わせて使ってます。

イベントの処理


http://blog.wakisaka-tsuyoshi.com/2013/01/blog-post_27.html


2013年1月30日水曜日

SyntaxHighlighter

あまりにも簡単でした。
前の記事から利用しています^^

http://www.way2blogging.org/widget-generators/syntax-highlighter-scripts-generator



なにやらタイヤの広告が表示されていますね^^;気にせずに・・・

テーマや言語を選択して「Generate」をクリック!
すると、コードが表示されます。これを</head>の直前にコピペします。
ハイライトしたいソースを<pre>タグで囲ってやります(言語指定します)。
これだけ。



2013年1月29日火曜日

user agent のチェック

アクセスしてくるブラウザによって処理を分けたいときがあります。
スマホやら、システム要件やら、

例えば、InternetExploere 7以降が対象という場合です。
ユーザエージェント文字列を取得し、バージョントークンを判定します。

$userAgent = env("HTTP_USER_AGENT");
if (mb_ereg('MSIE', $userAgent)) {
  preg_match("/(MSIE)(\s([\d]+))/is", $userAgenet, $versionToken);
  if ((int)$versionToken[3] >= 7) {
    // IE7以上のときの処理
  }
}

(参考)マイクロソフト社のユーザーエージェント
http://msdn.microsoft.com/ja-jp/library/ms537503(v=vs.85).aspx


2013年1月27日日曜日

イベントの処理

なるほどなるほど

<script>
  $(function() {
    $("セレクタ").change(function() {
      // ここにonchangeの処理を書くといいよ
    });
  });
</script>

メモメモ

2013年1月13日日曜日

xajaxでこっそりエラーが・・・

何かおかしい、いつもじゃないけど。
で、ログを見てみます。

どうやらこれかな。xajaxのエラーがこっそり?でてまして、これがそのログ
Severity: Notice  --> Undefined index:  query /var/www/html/foo/application/libraries/xajax/xajax.php 930
そして↓これが該当する箇所
$sURL.= $aURL['path'].@$aURL['query'];
なんじゃこりゃ?@_@

このアットマーク””エラー制御演算子という名称らしいです。画面にエラーを吐かない。なるほど。なにかいいことがあるのでしょうか。

さていろいろとググって見ますと、こちらに書かれています。
xajax Forums

なるほどなるほど。
ここを参考に修正してしばらく様子をみてみることにします。

ところで、

afaik

なる表現がでてきてまたまた、なんじゃこりゃ?あ、あふぇいく??

またまたGoogle先生にお願い。
As Far As I Know 「私が知っている限りでは」
という英語の省略記法らしいです。

2013年1月12日土曜日

日付処理でうっかり

日付処理でうっかりしてしまったこと。

「指定した日の○○ヶ月前の月始めの日」

を取得したい。こんなかんじに翻訳してみました。
PHP DateTimeクラスは便利ですね。
$foo = (指定した日)
$bar = (○○ヶ月前)
$dt = new DateTime($foo);
// 指定した日の$barヶ月前
$dt->modify(-($bar) - 1) . 'month');  ……(a)
// その月の月始の日
$dt->modify('first day of this month');  ……(b)
$dst = $dt->format('Y-m-d');

すると、
$foo に 1/31 などを指定したときは思ったように動作しないことがあります。

(a)の前に一旦(b)をはさんでおくとOKですね。

マニュアルにもありました。
http://php.net/manual/ja/datetime.modify.php


月始の日は常に”1”というのはさておき・・・(^^;

2013年1月6日日曜日

CakePHP2 同じフィールドをDB検索条件に指定するとき

DBを検索するとき検索条件で、以下のような指定(SQLを生成)をしたいときがあります。
WHERE foo <> 1 AND foo <> 2 …(a)
CakePHP2のfind()メソッドを使用するとき、こんな感じで条件を書いて
$conditions = array('foo <> ' => 1, 'foo <> ' => 2);
どうも思った結果が取れない???
生成されたSQLを確認すると、
WHERE foo <> 2
となっています。

どうやら同じフィールドを指定するのはうまくいかないみたいです。
で、以下のようにしてみました。
$conditions = array('foo NOT ' => (1, 2));
こうすると IN句を生成します。こんなふうに、
WHERE NOT IN (1, 2) …(b)
これで思った結果が取得できました。

先に(a)を思い浮かべてしまうのがダメだったみたいですね(^^;


2013年1月1日火曜日

あけましておめでとうございます2013

HNY2013.0 (Web2.0みたいに、てんゼロをつけてみたけど)

よい年になりますように。