項目属性一括設定[イベントリスト]

メインメニュー属性設定トップ表定義フォームイベント
名札 メイン
  変数宣言 整数{&i,&i2,&項目数,&ok,&ch}
  変数宣言 文字{&処理ファイル名,&項目名,&データ型,&項目種別,&条件文字列}
  変数宣言 文字{&表示条件列,&条件[3],&背景色[3],&文字色[3],&横位置[3],&縦位置[3]}
  変数宣言 文字{&cl条件,&cl背景色,&cl文字色,&cl横位置,&cl縦位置}
  変数宣言 整数{&項目値背,&項目値文,&項目値横,&項目値縦}
  変数宣言 文字{&項目値条件}

  定数宣言 文字{&色名="黒,青,赤,紫,緑,水色,黄色,白,チャコールグレイ,ねずみ色,灰色,パールグレイ,えんじ色,焦茶色,海老茶色,飴色,オリーブ,苔色,草色,深緑,納戸色,紺色,紫紺,濃紫,茜色,朱色,橙色,みかん色,薄茶色,裏葉色,萌黄色,常磐色,浅葱色,露草色,すみれ色,江戸紫,桜色,薄紅色,肌色,ひまわり色,黄水仙,月見草色,若草色,若苗色,薄浅葱,空色,ラベンダー,藤色,薄桜,象牙色,白百合色,白緑,薄水色,淡藤色,灰桜,ベージュ,菜の花色,スカイグレイ,青磁色,淡紅藤"}
  定数宣言 文字{&条件意味="正ならば,負ならば,ゼロならば,真ならば,削除行ならば,集計行ならば,総計行ならば,大計行ならば,中計行ならば,小計行ならば,小計1行ならば,小計2行ならば,小計3行ならば,小計4行ならば,小計5行ならば,小計6行ならば,未定義ならば"}
  定数宣言 文字{&条件文字="%P%,%N%,%Z%,%A%,%D%,%T%,%TG%,%TL%,%TM%,%TS%,%T1%,%T2%,%T3%,%T4%,%T5%,%T6%,%U%"}
  データパス名 #データパス名,固定=する

* 既存表のイメージを壊さない最小限必要な属性取得用
  変数宣言 数値{&行番号表示,&終端行罫線,&削除行文字色,&集計行文字色,&列固定文字色,&行セレクタ背景色,&行セレクタ文字色}
  変数宣言 文字{&表項目フォント,&表データフォント,&未定義値表示文字列,&負符号}

* 既存項目のイメージを壊さない最小限必要な属性取得用
  変数宣言 数値{&項少数桁,&項表示幅,&項表示形式,&項表示範囲,&項数値表示}
  変数宣言 文字{&項項目フォント,&項データフォント,&項通貨記号}


手続き定義開始 フォーム::フォーム開始(長整数 &表番号)
  if(#空ファイル)
    &処理ファイル名=#u
  else if(#終端行)
    ジャンプ 行番号=先頭
    &処理ファイル名=[ファイル名]
  else
    &処理ファイル名=[ファイル名]
  end
手続き定義終了

手続き定義開始 フォーム::レコード移動(長整数 &行番号,長整数 &総件数,長整数 &明細番号)
  if(#終端行)
    ジャンプ 行番号=最終
  end
手続き定義終了

*−−−−−−−−−−<主要なプログラム>−−−−−−−−−−
手続き定義開始 項目読込()
  if(#表オープン状態(&処理ファイル名,1)<>#u)
    メッセージボックス "読み込み表確認","対象表を閉じてください"
    手続き終了
  end

  &ok=#配列代入(条件,#u)
  &ok=#配列代入(背景色,#u)
  &ok=#配列代入(文字色,#u)
  &ok=#配列代入(横位置,#u)
  &ok=#配列代入(縦位置,#u)
  解除 *
  行削除 *,圧縮
  オブジェクト操作 @フォーム.レコード移動 = "0"

  表 &処理ファイル名
    &表項目フォント =#表表示条件(3)+","+#文字列(#表表示条件(4))
    &表データフォント =#表表示条件(7)+","+#文字列(#表表示条件(8))
    &未定義値表示文字列=#表表示条件(16)
    &負符号 =#表表示条件(15)
    &行番号表示 =#表表示条件(14)
    &終端行罫線 =#表表示条件(17)
    &削除行文字色 =#表表示条件(11)
    &集計行文字色 =#表表示条件(10)
    &列固定文字色 =#表表示条件(9)
    &行セレクタ背景色 =#表表示条件(13)
    &行セレクタ文字色 =#表表示条件(12)

  &項目数=#項目数
  繰り返し &i=1,&項目数
    &項目名 =#項目属性(&i,1)
    &データ型 =#項目属性(&i,2)
    &項目種別 =#項目属性(&i,6)
    &項表示幅 =#項目表示条件(&i,0)
    &項少数桁 =#項目表示条件(&i,11)
    &項通貨記号 =#項目表示条件(&i,12)
    &項表示形式 =#項目表示条件(&i,13)
    &項表示範囲 =#項目表示条件(&i,14)
    &項数値表示 =#項目表示条件(&i,15)
    &項項目フォント =#項目表示条件(&i,4)+","+#文字列(#項目表示条件(&i,5))
    &項データフォント=#項目表示条件(&i,8)+","+#文字列(#項目表示条件(&i,9))

    &表示条件列=#u
    if(#項目表示条件(&i,10)<>#u)
      &表示条件列=#項目表示条件(&i,10)
      手続き実行 条件分割()
      編集表 "項目属性変更.tbl"
      行追加 [項目名]=&項目名,[データ型]=&データ型,[表示条件]=&表示条件列,[種別]=&項目種別,[ファイル名]=&処理ファイル名,\
        [項少数桁]=&項少数桁,[項表示幅]=&項表示幅,[項通貨記号]=&項通貨記号,[項表示形式]=&項表示形式,\
        [項項目フォント]=&項項目フォント,[項データフォント]=&項データフォント,\
        [項表示範囲]=&項表示範囲,[項数値表示]=&項数値表示,\
        [条件1]=&条件[1],[条件2]=&条件[2],[条件3]=&条件[3]
      ジャンプ 行番号=最終

      繰り返し &i2=1,3
        if(#項目属性(#項目番号("最小"+#文字列(&i2)),0)<999)
          手続き実行 和訳変換()
        end
      繰り返し終了
    else
      編集表 "項目属性変更.tbl"
      行追加 [項目名]=&項目名,[データ型]=&データ型,[表示条件]=&表示条件列,[種別]=&項目種別,[ファイル名]=&処理ファイル名,\
        [項少数桁]=&項少数桁,[項表示幅]=&項表示幅,[項通貨記号]=&項通貨記号,[項表示形式]=&項表示形式,\
        [項項目フォント]=&項項目フォント,[項データフォント]=&項データフォント,\
        [項表示範囲]=&項表示範囲,[項数値表示]=&項数値表示
    end
    メソッド呼び出し 描画更新()
    編集表 &処理ファイル名
  繰り返し終了
  編集表 &処理ファイル名
  中止 表 編集対象表
  編集表 "項目属性変更.tbl"
  置換 [No]=#連番
  置換 [項項目フォント]=#条件選択(&表項目フォント=[項項目フォント],""""""+","+""""""+",継承,継承,0,0",1,""""+#対応文字列([項項目フォント],1)+""""+","+""""+#対応文字列([項項目フォント],2)+""""+","+#文字列(#数値(#対応文字列([項項目フォント],4))*100)+","+#条件選択(#対応文字列([項項目フォント],3)="S","標準",#対応文字列([項項目フォント],3)="I","斜体",#対応文字列([項項目フォント],3)="B","太字",#対応文字列([項項目フォント],3)="IB","太字斜体",1,"継承")+","+#対応文字列([項項目フォント],5)+","+#対応文字列([項項目フォント],6))
  置換 [項データフォント]=#条件選択(&表データフォント=[項データフォント],""""""+","+""""""+",継承,継承,0,0",1,""""+#対応文字列([項データフォント],1)+""""+","+""""+#対応文字列([項データフォント],2)+""""+","+#文字列(#数値(#対応文字列([項データフォント],4))*100)+","+#条件選択(#対応文字列([項データフォント],3)="S","標準",#対応文字列([項データフォント],3)="I","斜体",#対応文字列([項データフォント],3)="B","太字",#対応文字列([項データフォント],3)="IB","太字斜体",1,"継承")+","+#対応文字列([項データフォント],5)+","+#対応文字列([項データフォント],6))
  オブジェクト操作 @フォーム.レコード移動 = "1"
手続き定義終了

手続き定義開始 条件作成()
  メソッド呼び出し @フォーム.更新モード設定(0)
  &ch=0
  if(([条件定義1]=#u .and [条件定義2]<>#u) .or ([条件定義1]=#u .and [条件定義3]<>#u) .or ([条件定義2]=#u .and [条件定義3]<>#u))
    確認 "定義条件は、先頭から設定してください"
    &ch=1
    手続き終了
  end
  if([条件定義1]<>#u .and ([定背1]=#u .and [定文1]=#u .and [定横1]=#u .and [定縦1]=#u))
    確認 "定義条件「1」の、属性を設定してください"
    &ch=1
    手続き終了
  end
  if([条件定義2]<>#u .and ([定背2]=#u .and [定文2]=#u .and [定横2]=#u .and [定縦2]=#u))
    確認 "定義条件「2」の、属性を設定してください"
    &ch=1
    手続き終了
  end
  if([条件定義3]<>#u .and ([定背3]=#u .and [定文3]=#u .and [定横3]=#u .and [定縦3]=#u))
    確認 "定義条件「3」の、属性を設定してください"
    &ch=1
    手続き終了
  end
  if(#文字位置([定背1],"RGB")>0 .or #文字位置([定背2],"RGB")>0 .or #文字位置([定背3],"RGB")>0 .or #文字位置([定文1],"RGB")>0 .or #文字位置([定文2],"RGB")>0 .or #文字位置([定文3],"RGB")>0)
    確認 "色名に「RGB形式」は、使用できません"
    &ch=1
    手続き終了
  end

  繰り返し &i2=1,3
  if(#項目属性(#項目番号("条件定義"+#文字列(&i2)),0)<>#u)
    if(&i2=1)
      &条件[1]=#trim([条件定義1],4),&背景色[1]=#trim([定背1],4),&文字色[1]=#trim([定文1],4),&横位置[1]=#trim([定横1],4),&縦位置[1]=#trim([定縦1],4)
    else if(&i2=2)
      &条件[2]=#trim([条件定義2],4),&背景色[2]=#trim([定背2],4),&文字色[2]=#trim([定文2],4),&横位置[2]=#trim([定横2],4),&縦位置[2]=#trim([定縦2],4)
    else if(&i2=3)
      &条件[3]=#trim([条件定義3],4),&背景色[3]=#trim([定背3],4),&文字色[3]=#trim([定文3],4),&横位置[3]=#trim([定横3],4),&縦位置[3]=#trim([定縦3],4)
    end
    if(#部分列(&条件[&i2],1,1)="(" .and #右側文字列(&条件[&i2],1)=")")
      &条件[&i2]=#trim(#部分列(&条件[&i2],2,#文字数(&条件[&i2])-2),3)
    end
    if(#対応番号(&条件意味,&条件[&i2])>0)
      &条件[&i2]=#対応文字列(&条件文字,#対応番号(&条件意味,&条件[&i2]))
    else
      &条件[&i2]="("+&条件[&i2]+")"
    end
    if(&背景色[&i2]<>#u .and #対応番号(&色名,&背景色[&i2])>0)
      &背景色[&i2]=" CB"+#文字列(#対応番号(&色名,&背景色[&i2]))
    end
    if(&文字色[&i2]<>#u .and #対応番号(&色名,&文字色[&i2])>0)
      &文字色[&i2]=" CC"+#文字列(#対応番号(&色名,&文字色[&i2]))
    end
    if(#対応番号("左寄せ,右寄せ,中央揃え",&横位置[&i2])>0)
      &横位置[&i2]=" VP"+#文字列(#対応番号("左寄せ,右寄せ,中央揃え",&横位置[&i2]))
    end
    if(#対応番号("上詰め,中央揃え,下詰め",&縦位置[&i2])>0)
      &縦位置[&i2]=" HP"+#文字列(#対応番号("上詰め,中央揃え,下詰め",&縦位置[&i2]))
    end
    条件(&i2=1) 行訂正 [条件1]=&条件[1]+&背景色[1]+&文字色[1]+&横位置[1]+&縦位置[1]
    条件(&i2=2) 行訂正 [条件2]=&条件[2]+&背景色[2]+&文字色[2]+&横位置[2]+&縦位置[2]
    条件(&i2=3) 行訂正 [条件3]=&条件[3]+&背景色[3]+&文字色[3]+&横位置[3]+&縦位置[3]
  else
    &STR="行訂正 [条件"+#文字列(&i2)+"]=#u"
    コマンド &STR
  end
  繰り返し終了
手続き定義終了

手続き定義開始 条件設定実行()
  手続き実行 条件作成()
  条件(&ch=1) 手続き終了
  if(#表オープン状態(&処理ファイル名,1)<>#u)
    メッセージボックス "条件設定表確認","対象表を閉じてください"
    手続き終了
  end

  項目集計 [チェック]
  if(&有効件数=0)
    メッセージボックス "項目選択エラー","最低1個は、チェック印を設定してください"
    手続き終了
  end

  if(&削除行文字色=#u .or &集計行文字色=#u .or &列固定文字色=#u)
    メッセージボックス "表属性取得エラー", \
      "対象表の属性がクリアされています。\n\n継続の場合は「表の表示条件がいくつか初期状態にもどります。」\n\nこのまま続けますか?" \
      ,アイコン=?,ボタン指定=2,制御文字展開=する,&ok
    条件(&ok<>1)手続き終了
  end

  if([条件1]=#u)
    メッセージボックス "更新確認","選択項目数 「 "+#文字列(&有効件数)+" 項目」を更新します。\n\n −−−−《 定義内容 》−−−−\n\n" + \
       "条件選択が未定義の為、対象項目の条件設定を削除します。",アイコン=?,ボタン指定=2,制御文字展開=する,&ok
  else
    メッセージボックス "更新確認","選択項目数 「 "+#文字列(&有効件数)+" 項目」を更新します。\n\n −−−−《 定義内容 》−−−−\n\n" + \
       "条件1 = "+[条件1]+"\n"+"条件2 = "+[条件2]+"\n"+"条件3 = "+[条件3],アイコン=?,ボタン指定=2,制御文字展開=する,&ok
  end
  条件(&ok<>1) 手続き終了

  if([条件1]<>#u)
    &条件文字列=[条件1]
    条件([条件2]<>#u) &条件文字列=&条件文字列+","+[条件2]
    条件([条件3]<>#u) &条件文字列=&条件文字列+","+[条件3]
  else
    &条件文字列="削除"
  end
  &i=#行番号
  絞り込み[チェック]<>#u
  表 &処理ファイル名
  編集表 "項目属性変更.tbl"
  オブジェクト操作 @フォーム.レコード移動 = "0"
  ジャンプ 行番号=先頭
  繰り返し(.not #終端行)
    &項目名=[項目名]
    if(&条件文字列="削除")
      &STR="表示条件 列属性,["+&項目名+"],項目名フォント={"+[項項目フォント]+"},データ行フォント={"+[項データフォント]+"},表示幅=m"+#文字列([項表示幅]*100)
    else
      &STR="表示条件 列属性,["+&項目名+"],項目名フォント={"+[項項目フォント]+"},データ行フォント={"+[項データフォント]+"},編集属性={"+&条件文字列+"},表示幅=m"+#文字列([項表示幅]*100)
    end
    if([データ型]="文字列" .or [データ型]="カウンタ")
    else if([データ型]="整数" .or [データ型]="長整数")
      &STR=&STR+",表示形式="+#文字列([項表示形式])
    else if([データ型]="数値" .or [データ型]="通貨" .or [データ型]="実数")
      &STR=&STR+",小数部表示桁数="+#文字列([項少数桁])+",通貨記号="""+[項通貨記号]+""",表示形式="+#文字列([項表示形式])
    else if([データ型]="日時" .or [データ型]="時間")
      &STR=&STR+",小数部表示桁数="+#文字列([項少数桁])+",表示形式={"+#文字列([項表示形式])+[項数値範囲列]+[項表示範囲列]+"}"
    else
      確認 "不明なエラーです"
    end

    編集表 &処理ファイル名
    表示条件開始 ""
      コマンド &STR
    表示条件終了
    編集表 "項目属性変更.tbl"
    ジャンプ 行番号=次行
  繰り返し終了
  編集表 "項目属性変更.tbl"

  編集表 &処理ファイル名

  if(&削除行文字色=#u .or &集計行文字色=#u .or &列固定文字色=#u)
    表示条件開始 "",項目名フォント={"","",継承,継承,0,0},項目名横表示位置=継承,項目名縦表示位置=継承,\
      データ行フォント={"","",継承,継承,0,0},データ縦表示位置=継承,データ行高さ=自動
    表示条件終了
  else
    表示条件開始 "",項目名フォント={"","",継承,継承,0,0},項目名横表示位置=継承,項目名縦表示位置=継承,\
      データ行フォント={"","",継承,継承,0,0},データ縦表示位置=継承,データ行高さ=自動,\
      未定義値表示文字列=&未定義値表示文字列,負符号=&負符号,\
      行番号表示=#条件選択(&行番号表示=1,"する",1,"しない"),終端行罫線=#条件選択(&終端行罫線=1,"する",1,"しない"),\
      削除行文字色=#対応文字列(&色名,&削除行文字色),集計行文字色=#対応文字列(&色名,&集計行文字色),列固定文字色=#対応文字列(&色名,&列固定文字色),\
      行セレクタ背景色=#対応文字列(&色名,&行セレクタ背景色),行セレクタ文字色=#対応文字列(&色名,&行セレクタ文字色)
    表示条件終了
  end
  終了 表 編集対象表
  編集表 "項目属性変更.tbl"
  解除 *
  ジャンプ 行番号=&i
  オブジェクト操作 @フォーム.レコード移動 = "1"
手続き定義終了

*−−−−−−−−−−<補助的プログラム>−−−−−−−−−−

手続き定義開始 ファイル名取得()
  ファイル名入力 初期値=&処理ファイル名,&処理ファイル名
手続き定義終了

手続き定義開始 属性参照()
  書き出し 定義,&処理ファイル名,#データパス名+"項目属性参照temp.k3"
  表 "項目属性参照.tbl"
  行削除 *,圧縮
  読み込み K3,"項目属性参照temp.k3"
  ファイル削除 "項目属性参照temp.k3"
  ウィンドウ作成 表,オプション=最大化
手続き定義終了

手続き定義開始 表情報()
  &STR="\n"+\
    "項目フォント = {"+""""""+","+""""""+",継承,継承,0,0}"+"\n"+\
    "データフォント = {"+""""""+","+""""""+",継承,継承,0,0}"+"\n"+\
    "項目名横表示位置 = <継承>"+"\n"+\
    "項目名縦表示位置 = <継承>"+"\n"+ \
    "未定義値表示文字列 = "+&未定義値表示文字列+"\n"+ \
    "負符号 = "+&負符号+"\n"+ \
    "行番号表示 = "+#条件選択(&行番号表示=1,"する",1,"しない")+"\n"+ \
    "終端行罫線 = "+#条件選択(&終端行罫線=1,"する",1,"しない")+"\n"+ \
    "削除行文字色 = "+#対応文字列(&色名,&削除行文字色)+"\n"+ \
    "集計行文字色 = "+#対応文字列(&色名,&集計行文字色)+"\n"+ \
    "列固定文字色 = "+#対応文字列(&色名,&列固定文字色)+"\n"+ \
    "行セレクタ背景色 = "+#対応文字列(&色名,&行セレクタ背景色)+"\n"+ \
    "行セレクタ文字色 = "+#対応文字列(&色名,&行セレクタ文字色)+"\n\n"
  メッセージボックス"−−現在の『表情報』−−",&STR,制御文字列展開=する
手続き定義終了

手続き定義開始 sb条件1::入力支援クローズ(参照 文字列 &入力文字列,長整数 &モード)
  if(#文字位置(&入力文字列," ")>0)
    &入力文字列=#trim(#部分列(&入力文字列,#文字位置(&入力文字列," ")),3)
    if(#文字位置(&入力文字列,"[項目名]"))
      &入力文字列=#部分列(&入力文字列,1,#文字位置(&入力文字列,"["))+[項目名]+#部分列(&入力文字列,#文字位置(&入力文字列,"]"))
    end
  end
手続き定義終了

手続き定義開始 sb条件2::入力支援クローズ(参照 文字列 &入力文字列,長整数 &モード)
  if(#文字位置(&入力文字列," ")>0)
    &入力文字列=#trim(#部分列(&入力文字列,#文字位置(&入力文字列," ")),3)
    if(#文字位置(&入力文字列,"[項目名]"))
      &入力文字列=#部分列(&入力文字列,1,#文字位置(&入力文字列,"["))+[項目名]+#部分列(&入力文字列,#文字位置(&入力文字列,"]"))
    end
  end
手続き定義終了

手続き定義開始 sb条件3::入力支援クローズ(参照 文字列 &入力文字列,長整数 &モード)
  if(#文字位置(&入力文字列," ")>0)
    &入力文字列=#trim(#部分列(&入力文字列,#文字位置(&入力文字列," ")),3)
    if(#文字位置(&入力文字列,"[項目名]"))
      &入力文字列=#部分列(&入力文字列,1,#文字位置(&入力文字列,"["))+[項目名]+#部分列(&入力文字列,#文字位置(&入力文字列,"]"))
    end
  end
手続き定義終了

手続き定義開始 aチェック::マウス左クリック(長整数 &マウス位置[2],長整数 &明細番号,長整数 &フラグ,参照 長整数 &処理中止)
  &i=#行番号
  ケース開始
    ケース([チェック]=#u)
      置換 [チェック]="変更"
    ケース(その他)
      置換 [チェック]=#u
  ケース終了
  ジャンプ 行番号=&i
手続き定義終了

手続き定義開始 a種別::マウス左クリック(長整数 &マウス位置[2],長整数 &明細番号,長整数 &フラグ,参照 長整数 &処理中止)
  &i=#行番号
  メソッド呼び出し @フォーム.描画禁止( 1 )
  置換 [チェック]=#条件選択([種別]="計算","変更",1,#u)
  ジャンプ 行番号=&i
  メソッド呼び出し @フォーム.描画禁止( 0 )
手続き定義終了

手続き定義開始 b複写::マウス左クリック(長整数 &マウス位置[2],長整数 &明細番号,長整数 &フラグ,参照 長整数 &処理中止)
  変数宣言 文字列{&focus}
  メソッド呼び出し @フォーム.フォーカスオブジェクト取得(&focus)
  if (#部分列(&focus,1,3)="t条件" .or #部分列(&focus,1,4)="t背景色" .or #部分列(&focus,1,4)="t文字色" .or #部分列(&focus,1,4)="t横位置" .or #部分列(&focus,1,4)="t縦位置")
    if(#右側文字列(&focus,1)="1")
      &cl条件=[条件定義1],&cl背景色=[定背1],&cl文字色=[定文1],&cl横位置=[定横1],&cl縦位置=[定縦1]
    else if(#右側文字列(&focus,1)="2")
      &cl条件=[条件定義2],&cl背景色=[定背2],&cl文字色=[定文2],&cl横位置=[定横2],&cl縦位置=[定縦2]
    else if(#右側文字列(&focus,1)="3")
      &cl条件=[条件定義3],&cl背景色=[定背3],&cl文字色=[定文3],&cl横位置=[定横3],&cl縦位置=[定縦3]
    end
    if(&cl条件+&cl背景色+&cl文字色+&cl横位置+&cl縦位置<>#u)
      メッセージボックス "複写確認",#全角(#右側文字列(&focus,1))+"番目の式−−−−−\n\n"+" 条件式 = "+&cl条件+"\n"+" 背景色 = "+&cl背景色+"\n"+" 文字色 = "+&cl文字色+"\n"+" 横位置 = "+&cl横位置+"\n"+" 縦位置 = "+&cl縦位置+"\n\nを、複写致しました。",アイコン=!,制御文字展開=する
    end
  end
手続き定義終了

手続き定義開始 b貼付::マウス左クリック(長整数 &マウス位置[2],長整数 &明細番号,長整数 &フラグ,参照 長整数 &処理中止)
  変数宣言 文字列{&focus}
  メソッド呼び出し @フォーム.フォーカスオブジェクト取得(&focus)
  if(&cl条件+&cl背景色+&cl文字色+&cl横位置+&cl縦位置<>#u)
    if (#部分列(&focus,1,3)="t条件" .or #部分列(&focus,1,4)="t背景色" .or #部分列(&focus,1,4)="t文字色" .or #部分列(&focus,1,4)="t横位置" .or #部分列(&focus,1,4)="t縦位置")
      メッセージボックス "貼付確認",#全角(#右側文字列(&focus,1))+"番目へ−−−−−\n\n"+" 条件式 = "+&cl条件+"\n"+" 背景色 = "+&cl背景色+"\n"+" 文字色 = "+&cl文字色+"\n"+" 横位置 = "+&cl横位置+"\n"+" 縦位置 = "+&cl縦位置+"\n\nを、貼り付けますか?。",アイコン=?,ボタン指定=2,制御文字展開=する,&ok
      if(&ok=1 .and #右側文字列(&focus,1)="1")
        行訂正 [条件定義1]=&cl条件,[定背1]=&cl背景色,[定文1]=&cl文字色,[定横1]=&cl横位置,[定縦1]=&cl縦位置
      else if(&ok=1 .and #右側文字列(&focus,1)="2")
        行訂正 [条件定義2]=&cl条件,[定背2]=&cl背景色,[定文2]=&cl文字色,[定横2]=&cl横位置,[定縦2]=&cl縦位置
      else if(&ok=1 .and #右側文字列(&focus,1)="3")
        行訂正 [条件定義3]=&cl条件,[定背3]=&cl背景色,[定文3]=&cl文字色,[定横3]=&cl横位置,[定縦3]=&cl縦位置
      end
    end
  end
手続き定義終了

手続き定義開始 消去1()
  行訂正 [条件定義1]=#u,[定背1]=#u,[定文1]=#u,[定横1]=#u,[定縦1]=#u
手続き定義終了
手続き定義開始 消去2()
  行訂正 [条件定義2]=#u,[定背2]=#u,[定文2]=#u,[定横2]=#u,[定縦2]=#u
手続き定義終了
手続き定義開始 消去3()
  行訂正 [条件定義3]=#u,[定背3]=#u,[定文3]=#u,[定横3]=#u,[定縦3]=#u
手続き定義終了

手続き定義開始 sb横位置1::入力支援クローズ(参照 文字列 &入力文字列,長整数 &モード)
  条件(&入力文字列="<継承>") &入力文字列=#u
手続き定義終了
手続き定義開始 sb縦位置1::入力支援クローズ(参照 文字列 &入力文字列,長整数 &モード)
  条件(&入力文字列="<継承>") &入力文字列=#u
手続き定義終了
手続き定義開始 sb横位置2::入力支援クローズ(参照 文字列 &入力文字列,長整数 &モード)
  条件(&入力文字列="<継承>") &入力文字列=#u
手続き定義終了
手続き定義開始 sb縦位置2::入力支援クローズ(参照 文字列 &入力文字列,長整数 &モード)
  条件(&入力文字列="<継承>") &入力文字列=#u
手続き定義終了
手続き定義開始 sb横位置3::入力支援クローズ(参照 文字列 &入力文字列,長整数 &モード)
  条件(&入力文字列="<継承>") &入力文字列=#u
手続き定義終了
手続き定義開始 sb縦位置3::入力支援クローズ(参照 文字列 &入力文字列,長整数 &モード)
  条件(&入力文字列="<継承>") &入力文字列=#u
手続き定義終了

手続き定義開始 フォント情報1()
  if([FJ1]<>999)
    &STR= "日本語フォント:"+#部分列(#部分列([条件1],[FJ1]+3),1,#文字位置(#部分列([条件1],[FJ1]+3),"""")-1)+"\n"
  else
    &STR= "日本語フォント:< 継承 >\n"
  end
  if([FE1]<>999)
    &STR=&STR+"英文フォント:"+#部分列(#部分列([条件1],[FE1]+3),1,#文字位置(#部分列([条件1],[FE1]+3),"""")-1)+"\n"
  else
    &STR=&STR+"英文フォント:< 継承 >\n"
  end
  if([FS1]<>999)
    &STR=&STR+"フォントサイズ:"+#文字列(#数値(#部分列(#部分列([条件1],[FS1]+2),1,#文字位置(#部分列([条件1],[FS1]+2)," ")-1))/100)+"\n"
  else
    &STR=&STR+"フォントサイズ:< 継承 >\n"
  end
  if([FY1]<>999)
    &STR=&STR+"スタイル:"+\
      #条件選択(+#部分列(#部分列([条件1],[FY1]+7),1,2)="BI","斜体太字",\
           #部分列(#部分列([条件1],[FY1]+7),1,1)="I","斜体",\
           #部分列(#部分列([条件1],[FY1]+7),1,1)="B","太字",\
           #部分列(#部分列([条件1],[FY1]),5,1)=" ","標準", /* FYの後ろに他の条件設定 */ \
           #部分列(#部分列([条件1],[FY1]),5,1)=#u,"標準", /* FYの後ろに他の条件未設定 */ \
           1,"このエラーがでましたら、ご連絡下さい")
  else
    &STR=&STR+"スタイル:< 継承 >\n"
  end
  メッセージボックス "フォント情報",&STR,制御文字展開=する
手続き定義終了

手続き定義開始 フォント情報2()
  if([FJ2]<>999)
    &STR= "日本語フォント:"+#部分列(#部分列([条件2],[FJ2]+3),1,#文字位置(#部分列([条件2],[FJ2]+3),"""")-1)+"\n"
  else
    &STR= "日本語フォント:< 継承 >\n"
  end
  if([FE2]<>999)
    &STR=&STR+"英文フォント:"+#部分列(#部分列([条件2],[FE2]+3),1,#文字位置(#部分列([条件2],[FE2]+3),"""")-1)+"\n"
  else
    &STR=&STR+"英文フォント:< 継承 >\n"
  end
  if([FS2]<>999)
    &STR=&STR+"フォントサイズ:"+#文字列(#数値(#部分列(#部分列([条件2],[FS2]+2),1,#文字位置(#部分列([条件2],[FS2]+2)," ")-1))/100)+"\n"
  else
    &STR=&STR+"フォントサイズ:< 継承 >\n"
  end
  if([FY2]<>999)
    &STR=&STR+"スタイル:"+\
      #条件選択(+#部分列(#部分列([条件2],[FY2]+7),1,2)="BI","斜体太字",\
           #部分列(#部分列([条件2],[FY2]+7),1,1)="I","斜体",\
           #部分列(#部分列([条件2],[FY2]+7),1,1)="B","太字",\
           #部分列(#部分列([条件2],[FY2]),5,1)=" ","標準", /* FYの後ろに他の条件設定 */ \
           #部分列(#部分列([条件2],[FY2]),5,1)=#u,"標準", /* FYの後ろに他の条件未設定 */ \
           1,"このエラーがでましたら、ご連絡下さい")
  else
    &STR=&STR+"スタイル:< 継承 >\n"
  end
  メッセージボックス "フォント情報",&STR,制御文字展開=する
手続き定義終了

手続き定義開始 フォント情報3()
  if([FJ3]<>999)
    &STR= "日本語フォント:"+#部分列(#部分列([条件3],[FJ3]+3),1,#文字位置(#部分列([条件3],[FJ3]+3),"""")-1)+"\n"
  else
    &STR= "日本語フォント:< 継承 >\n"
  end
  if([FE3]<>999)
    &STR=&STR+"英文フォント:"+#部分列(#部分列([条件3],[FE3]+3),1,#文字位置(#部分列([条件3],[FE3]+3),"""")-1)+"\n"
  else
    &STR=&STR+"英文フォント:< 継承 >\n"
  end
  if([FS3]<>999)
    &STR=&STR+"フォントサイズ:"+#文字列(#数値(#部分列(#部分列([条件3],[FS3]+2),1,#文字位置(#部分列([条件3],[FS3]+2)," ")-1))/100)+"\n"
  else
    &STR=&STR+"フォントサイズ:< 継承 >\n"
  end
  if([FY3]<>999)
    &STR=&STR+"スタイル:"+\
      #条件選択(+#部分列(#部分列([条件3],[FY3]+7),1,2)="BI","斜体太字",\
           #部分列(#部分列([条件3],[FY3]+7),1,1)="I","斜体",\
           #部分列(#部分列([条件3],[FY3]+7),1,1)="B","太字",\
           #部分列(#部分列([条件3],[FY3]),5,1)=" ","標準", /* FYの後ろに他の条件設定 */ \
           #部分列(#部分列([条件3],[FY3]),5,1)=#u,"標準", /* FYの後ろに他の条件未設定 */ \
           1,"このエラーがでましたら、ご連絡下さい")
  else
    &STR=&STR+"スタイル:< 継承 >\n"
  end
  メッセージボックス "フォント情報",&STR,制御文字展開=する
手続き定義終了


*−−−−−−−−−−<イベントの中で使用>−−−−−−−−−−

手続き定義開始 条件分割()
  変数宣言 整数{&no,&Rk,&Lk}
  &no=1
  繰り返し &i2=1,3
    &条件[&i2]=#trim(#対応文字列(&表示条件列,&no),1)
    &Rk=#文字数(#文字置換(&条件[&i2],"(",""))
    &Lk=#文字数(#文字置換(&条件[&i2],")",""))
    繰り返し(&Rk<>&Lk)
      &no=&no+1
      &条件[&i2]=&条件[&i2]+","+#trim(#対応文字列(&表示条件列,&no),1)
      &Rk=#文字数(#文字置換(&条件[&i2],"(",""))
      &Lk=#文字数(#文字置換(&条件[&i2],")",""))
    繰り返し終了
    &no=&no+1
    if (#対応文字列(&表示条件列,&no)=#u)
      繰り返し中止
    end
  繰り返し終了
手続き定義終了

手続き定義開始 和訳変換()
  &条件[&i2]=#u,&背景色[&i2]=#u,&文字色[&i2]=#u,&横位置[&i2]=#u,&縦位置[&i2]=#u
  &項目値条件=#項目属性(#項目番号("条件"+#文字列(&i2)),0)
  &項目値背=#項目属性(#項目番号("背"+#文字列(&i2)),0)
  &項目値文=#項目属性(#項目番号("文"+#文字列(&i2)),0)
  &項目値横=#項目属性(#項目番号("横"+#文字列(&i2)),0)
  &項目値縦=#項目属性(#項目番号("縦"+#文字列(&i2)),0)

  if(&i2=1)
    &条件[1]=#trim(#部分列([条件1],1,[最小1]-1),3)
  else if(&i2=2)
    &条件[2]=#trim(#部分列([条件2],1,[最小2]-1),3)
  else if(&i2=3)
    &条件[3]=#trim(#部分列([条件3],1,[最小3]-1),3)
  end
  if(#対応番号(&条件文字,&条件[&i2])>0)
    &条件[&i2]=#対応文字列(&条件意味,#対応番号(&条件文字,&条件[&i2]))
  end
  if(&項目値背>1 .and &項目値背<999)
    &背景色[&i2]=#trim(#部分列(#項目属性(#項目番号("条件"+#文字列(&i2)),0),&項目値背,4),3)
    &背景色[&i2]=#対応文字列(&色名,#数値(#文字置換(&背景色[&i2],"CB","")))
  end
  if(&項目値文>1 .and &項目値文<999)
    &文字色[&i2]=#trim(#部分列(#項目属性(#項目番号("条件"+#文字列(&i2)),0),&項目値文,4),3)
    &文字色[&i2]=#対応文字列(&色名,#数値(#文字置換(&文字色[&i2],"CC","")))
  end
  if(&項目値横>1 .and &項目値横<999)
    &横位置[&i2]=#対応文字列("左寄せ,右寄せ,中央揃え",#数値(#部分列(&項目値条件,&項目値横+2,1)))
  end
  if(&項目値縦>1 .and &項目値縦<999)
    &縦位置[&i2]=#対応文字列("上詰め,中央揃え,下詰め",#数値(#部分列(&項目値条件,&項目値縦+2,1)))
  end
  条件(&i2=1) 行訂正 終了状態=&ok,[条件定義1]=#TRIM(&条件[1],3),[定背1]=&背景色[1],[定文1]=&文字色[1],[定横1]=&横位置[1],[定縦1]=&縦位置[1]
  条件(&i2=2) 行訂正 終了状態=&ok,[条件定義2]=#TRIM(&条件[2],3),[定背2]=&背景色[2],[定文2]=&文字色[2],[定横2]=&横位置[2],[定縦2]=&縦位置[2]
  条件(&i2=3) 行訂正 終了状態=&ok,[条件定義3]=#TRIM(&条件[3],3),[定背3]=&背景色[3],[定文3]=&文字色[3],[定横3]=&横位置[3],[定縦3]=&縦位置[3]
手続き定義終了

TOP