SQLの窓

2013年06月22日


Word 2013 と OneDrive

Word 2013 では、アプリケーションを起動した時点でストアアプリのようなインターフェイスです。

※ 画像はクリックすると Shadowbox で拡大されます

( ▼ 以下の画像は全て Windows7 )



つい、テンプレートを使って文書を作りたくなって、『ビシネス用チラシ』を使って画像を埋め込んで OneDrive へアップロードしました。

OneDrive で『竜を駆る少女』を表示

以下は、ログインして OneDrive で直接編集可能な状態です。上のリンクでは、表示とダウンロードが可能です。



Word 2013 での画面

※ 最近使ったファイル( OneDrive )



開いた状態



他の文書を開く



参照すると、Windows のエクスプローラで OneDrive を直接参照します







posted by lightbox at 2013-06-22 01:36 | Microsoft Office | このブログの読者になる | 更新情報をチェックする

2013年06月20日


Android(4.2.2) ADT から Post や Get をできるかぎり簡単にするサンプル

SkyDrive へ移動




このサンプルの目的は、サーバにあるデータベースを Android より更新したり読み出したりする事にあります。ここでは、まだ一覧表示である ListView 部分がありませんが、4つのクラスを含むパッケージを用意しています。

1) HttpPostAndXml : Post して結果を XML で取得する
2) HttpGetAndXml : Get して結果を XML で取得する
3) GetRssItemValue : 取得した XML 内の item 要素内の先頭データの指定要素の値を取得する
4) MessageBox : 更新確認の為の AlertDialog を使用する

1) 2) は、非同期処理である必要があるため、AsyncTask を継承しています( AsyncTask<String, Void, Document> )。GetRssItemValue は、RSS 的な単純なフォーマットを想定しており、値を容易に取得可能です。MessageBox は、実際以下のように使っています
package com.example.shapetextview;

import java.util.HashMap;
import java.util.Map;

import org.w3c.dom.Document;

import jp.winofsql.*;

import android.app.Activity;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;

public class MainActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		this.setContentView(R.layout.activity_main);
	}

	public void postData(View view) {
		
		new MessageBox(this, "確認", "更新しますか?") {
			
			@Override
			public void onYesClick(DialogInterface dialog, int which) {
				
				Map<String,String> map = new HashMap<String,String>();
				map.put("url", "http://10.0.2.2/lightbox/webapi/write_utf8.php");
				map.put("u", "insert into rss (guid,title) values('0001','タイトル')");

				new HttpPostAndXml() {

					@Override
					protected void onPostExecute(Document result) {
						
						GetRssItemValue iv = new GetRssItemValue(result);
						TextView tv = (TextView)MainActivity.this.findViewById(R.id.textView1);
						tv.setText(iv.get("title"));
						
					}
					
				}.execute(map);
				
			}
			
		}.show();
	
	}
	
	public void getData(View view) {
		
		String url = "http://matome.naver.jp/feed/hot";
		url = "http://10.0.2.2/lightbox/webapi/show_utf8.php";
		
		new HttpGetAndXml() {

			@Override
			protected void onPostExecute(Document result) {
				
				GetRssItemValue iv = new GetRssItemValue(result);
				TextView tv = (TextView)MainActivity.this.findViewById(R.id.textView1);
				tv.setText(iv.get("title"));
				
			}
			
		}.execute(url);
	
	}

}

プロジェクトにある wkprefs フォルダにあるデータは、ワークスペースの ADT( Eclipse ) の設定を他のワークスペースに以降する為のセットです(行番号・フォント・テンプレート等)。

※ TextView の Background に、XML で定義したリソースで枠線を引いています

関連する記事

Android : POST 送信。Eclipse(ADT) を使ったコード作成手順 / MessageBox.java と HttpPostAndXml.java



posted by lightbox at 2013-06-20 21:18 | Android | このブログの読者になる | 更新情報をチェックする

2013年06月17日


SQL 文へのデータバインド用 public class GetSQL

やり方としてはごく一般的なものですが、プログラマ初心者の発想には無いものだと思われます。
import java.util.Iterator;
import java.util.Map;

public class GetSQL {
	
	private String target;

	public GetSQL(String target) {
		this.target = target;
	}

	public String buildSQL(Map<String,String> rdata) {
		String result = target;
		
		Iterator<String> it =  rdata.keySet().iterator();
		String key = null;
		String value = null;
		String data = null;
		while(it.hasNext()) {
			key = it.next().toString();
			data = "$" + key;
			value = rdata.get(key);
			result = result.replace(data, value);
		}		
		return result;
	}

}

▼ 以下使用方法


replace メソッドは、正規表現では無く CharSequence での処理ですが、二箇所の $insert_date が一度の実行で置き換えられています。


posted by lightbox at 2013-06-17 17:00 | Java | このブログの読者になる | 更新情報をチェックする

2013年06月14日


SQLの窓 Build C++ : 準備不要の 2000 〜 2003 の .MDB へのアクセス



インストールフォルダ内の Tool\parts に、4つの 販売管理データベースがあり、そのうちの 販売管理C.mdb は、A ボタンで開いたダイアログからすぐ選択できるようになっています。



(1) 販売管理.mdb 
社員マスタが単純です
郵便番号マスタがありません。

(2) 販売管理B.mdb
社員マスタに自己結合用の『管理者』が追加されています
郵便番号マスタが追加されています。

(3) 販売管理C.mdb
社員マスタに生年月日が追加されています
テーブルに、入金予定データと商品集計、得意先集計、社員変更履歴が追加されています

(4) db2002_2003.mdb
Office2013 で作った空のDB を 2002〜2003 用で保存し、(3) からエクスポートしたものなので、主キーが設定されていません

MDB は、ドラッグ&ドロップで読み込む事ができます

※ テーブル一覧エリアにドラッグ&ドロップできます



A ボタンのダイアログから読み込むと、読み込んだ履歴が残りますが、ドラッグ&ドロップでは残りません。


 SQLの窓 Build C++ のダウンロード





posted by lightbox at 2013-06-14 18:54 | SQLの窓 Build C++ | このブログの読者になる | 更新情報をチェックする

SQLの窓 Build C++ : 列名リストの取得

(1) 対象となる表の選択



(2) 下段の表定義情報エリアで右クリック



カンマ区切り( または、タブ区切り、改行区切り )を選択すると、その形式でクリップボードに転送されます
▼ カンマ区切り
社員コード,氏名,フリガナ,所属,性別,作成日,更新日,給与,手当,管理者

▼ タブ区切り
社員コード	氏名	フリガナ	所属	性別	作成日	更新日	給与	手当	管理者

▼ 改行区切り
社員コード
氏名
フリガナ
所属
性別
作成日
更新日
給与
手当
管理者



 SQLの窓 Build C++ のダウンロード





posted by lightbox at 2013-06-14 15:54 | SQLの窓 Build C++ | このブログの読者になる | 更新情報をチェックする
Seesaa の各ページの表示について
Seesaa の 記事がたまに全く表示されない場合があります。その場合は、設定> 詳細設定> ブログ設定 で 最新の情報に更新の『実行ボタン』で記事やアーカイブが最新にビルドされます。

Seesaa のページで、アーカイブとタグページは要注意です。タグページはコンテンツが全く無い状態になりますし、アーカイブページも歯抜けページはコンテンツが存在しないのにページが表示されてしまいます。

また、カテゴリページもそういう意味では完全ではありません。『カテゴリID-番号』というフォーマットで表示されるページですが、実際存在するより大きな番号でも表示されてしまいます。

※ インデックスページのみ、実際の記事数を超えたページを指定しても最後のページが表示されるようです

対処としては、このようなヘルプ的な情報を固定でページの最後に表示するようにするといいでしょう。具体的には、メインの記事コンテンツの下に『自由形式』を追加し、アーカイブとカテゴリページでのみ表示するように設定し、コンテンツを用意するといいと思います。


※ エキスパートモードで表示しています

アーカイブとカテゴリページはこのように簡単に設定できますが、タグページは HTML 設定を直接変更して、以下の『タグページでのみ表示される内容』の記述方法で設定する必要があります

<% if:page_name eq 'archive' -%>
アーカイブページでのみ表示される内容
<% /if %>

<% if:page_name eq 'category' -%>
カテゴリページでのみ表示される内容
<% /if %>

<% if:page_name eq 'tag' -%>
タグページでのみ表示される内容
<% /if %>
この記述は、以下の場所で使用します
container 終わり



フリーフォントで簡単ロゴ作成
フリーフォントでボタン素材作成
フリーフォントで吹き出し画像作成
フリーフォントではんこ画像作成
ほぼ自由に利用できるフリーフォント
フリーフォントの書体見本とサンプル
画像を大きく見る為のウインドウを開くボタンの作成

CSS ドロップシャドウの参考デモ
イラストAC
ぱくたそ
写真素材 足成
フリーフォント一覧
utf8 文字ツール
右サイド 終わり
base 終わり