Skip to main content
  • 4,136 Discussions
  • 11,312 Replies
4136 Discussions
サンプル: DSP Widgetに関連付けられたオカレンスのラベル値を変更する

DSP Widgetに関連付けられたオカレンスのラベル値を変更するAuthor: takeuchi@fcs21.jp (richiet) DSP Widgetに関連付けられたオカレンスのラベル値を変更するサンプルです [機能説明]  Uniface API Javascriptを使ってDSP Widgetに関連付けられた  オカレンスのラベル値を変更します。 [プログラムサンプル] 1. フィールドオブジェクトを取得する  var instanceName = uniface.getInstance(<'DSP名'>);  var entityName = uniface.getEntity(<'エンティティ名'>);  var occ = entityName.getOccurrence(<オカレンス番号>);   var fieldName = occ.getField('<フィールド名>'); 2. 関連付けられたラベルオブジェクトを取得する var vlabel = fieldName.getLabel(); もしくは   var vlabel = occ.getLabel('<フィールド名>'); 3. ラベル値を変更する   vlabel.setText('label text'); <メモ> ラベル値を   var vlabelText = label.getText(); で取得できます。   制限  1. フィールドに関連付けられていないラベルは変更する事ができない。 2. 一括でラベルのデフォルト値を変更するAPIは用意されていない。  3. $textはサーバ側の処理のためラベルテキストとしては指定できない [環境設定] 対応バージョン: Uniface 9.7以上  ファイル名 : DSPCHGLABEL.zip  DSPCHGLABEL.xml Readme.txt (サンプル説明) フォーム名 : DSPCHGLABEL ダウンロードファイル名: DSPCHGLABEL.zip

サンプル: Structを使用しライセンスコードの情報をUnifaceに取り込む

Structを使用しライセンスコードの情報をUnifaceに取り込むAuthor: takeuchi@fcs21.jp (richiet) Structを使用しライセンスコードの情報を UnifceコンポーネントのKEYSテーブルに取り込むサンプルです [機能説明]   XML形式のライセンスファイルをstructを使用し  ライセンスコードの情報をコンポーネントのKEYSテーブルに取り込みます。  XMLからコンポーネントに取り込む手順は「ステップを見る」  ボタンで各ステップの内容およびメモリ上に展開された情報を確認できます [環境設定]   対応バージョン: Uniface 9.6.06以上  ファイル名    : structsample1.zip                     structsample1.xml                  licensefile.xml                      Readme.txt  (サンプル説明)   フォーム名    : structfrm                       licensecmp        ダウンロードファイル名: structsample1.zip

技術情報: Uniface 8とUniface9でのLinespaceの互換性について

Uniface 8とUniface9でのLinespaceの互換性についてAuthor: takeuchi@fcs21.jp (richiet) Uniface 8とUniface9でのLinespaceの互換性について 次の条件の場合、Uniface 8では、コマンドボタンとリストボックスの間に 若干スペースが設けられていましたが、Uniface 9より、スペースがなくなりました。 条件   1. ini ファイルに、Linespace=1が指定してある、   2. listboxのプロパティに、forcefit=onが指定してある   3. Listboxの真下に、Commandbutton が定義されている [理由] 本事象は、Widnowsが提供している、UNICODEを対応するために、作成された、新しい  Widgetコントロールによって発生しています。   Uniface 9では、この新しいUNICODE用のコントロールセットを適用していいます。 この事象を裏をとるため、開発元でUniface 8で使用されていたコントロールセットを Uniface 9 に適用した 結果、Uniface 8と同じように、コマンドボタンとリストボックスの間に若干スペースが設けられ事が確認   とれました。 [回避策]    iniファイルで、Linespace=1 に指定する    listboxのプロパティを Forcefitのチェックを外す    もしくは、    iniファイルで、Linespaceの値を2以上に指定する。

サンプル: PROC命令entitycopyを使ってのサンプル

PROC命令entitycopyを使ってのサンプルAuthor: takeuchi@fcs21.jp (richiet) PROC命令entitycopyを使ってのサンプルです [機能説明] PROC命令entitycopy を/cpyと同じ方法でレコードをエクスポートし 同じ構成の別のエンティティにレコードをコピーする/p> [プログラムサンプル]     entitycopy "TXT:TXTTEST.TXT", "XML:TXTTEST.XML"      でXML形式にエクスポート後、XMLファイルを開き、コピー先のモデル名      およびエンティティ名を修正します。      次に修正したファイルをentitycopy "XML:TXTTEST.XML", "DEF:" でインポートします。 [環境設定]   対応バージョン: Uniface 9.6以上  ファイル名    : CPYTXTTODB.zip                     CPYTXTTODB.xml                      Readme.txt  (サンプル説明)                      TXTTEST  (サンプルデータ)                        idf.asn  (サンプル

サンプル: sql/dataの紹介

sql/dataの紹介Author: takeuchi@fcs21.jp (richiet) sql/dataの紹介  Proc命令、sql/printで以下のようなSQLを実行した場合、フィールド定義によっては  大量の空白が付加されます   select * from testent  PROC命令、sql/printには、これらの空白を削除するオプションが  用意されておりません。このため、Uniface 9.6.04より新機能、sql/dataが  用意されました。   [機能説明] sql/dataの戻り値は、Proc命令、 sql/printとは異なり、文字型のリスト形式で$resultに  結果が返されます。  なお、各項目の後ろの空白は、retriev/e命令でエンティティを検出した場合と同様、  自動的に削除されます。 リスト形式の結果を各フィールドにアサインする場合は、Proc 命令、forlistを使用し、  各レコードのフィールドの値を取得してください。 例) テーブル名、 T にフィールド、A,Bが定義されていて、それぞれのフィールドの値が、    3つ登録されている場合、    A B    1 2    3 4    5 6    sql/data “SELECT * FROM T”, “DEF” の実行結果、$resultは、    1·!·;2·;3·!·;4·;5·!·;6 が返されます。    <備考> 合計3つのリストが存在し、各リストは2つのフィールド(A,B)値が登録されている   各フィールドに値をセットする場合、forlistで各フィールドの値を取得する      forlist vRecord in $result     getitem vFIELD1, vRecord, 1     getitem vFIELD2, vRecord, 2     <コーディング>    endfor [サンプル]  [内容]   Proc命令、sql/data/fieldname でデータベースから各レコードの項目名および、   値を取得し、ダミーテーブルに値をセットする  [使用手順]   1. データベースにテーブル名、TESTENTが存在する場合は削除(Drop)してください。   2. SQL

技術情報: Uniface YouTubeビデオにて紹介されているRich Internet Applicationのサンプル

Uniface YouTubeビデオにて紹介されているRich Internet ApplicationのサンプルAuthor: takeuchi@fcs21.jp (richiet) Uniface YouTubeビデオにて紹介されているRich Internet Applicationのサンプル 「UnifaceのRich Internet Applicationサンプル」 YouTubeにて紹介しております「Rich Internet Applicationの作成方法」の サンプルアプリケーションになります。 File:Uniface_RIA_YouTube.zip ダウンロードして頂き、ご活用ください。 実際のアプリケーションの作成方法は以下のビデオをご覧ください。 Unifaceへのセットアップ方法はZipファイル内のreadme.txtに記載しております。 ビデオタイトルとURL ~基本的編~ №0:Uniface 基本的なRIAの作成方法を紹介するビデオ№0 「事前説明編」 http://www.youtube.com/embed/-tJB--yFKn8 №1:Uniface 基本的なRIAの作成方法を紹介するビデオ№1 「DSP作成 Copy&Html」 http://www.youtube.com/embed/98y4hvbjyj0 №2:Uniface 基本的なRIAの作成方法を紹介するビデオ№2 「コントロールボタン」 http://www.youtube.com/embed/vR279TEewgc №3:Uniface 基本的なRIAの作成方法を紹介するビデオ№3「メッセージ出力」 http://www.youtube.com/embed/xqx39HQnRkk №4:Uniface 基本的なRIAの作成方法を紹介するビデオ№4「ヘッダーの色設定」 http://www.youtube.com/embed/zWxQArJN0Vc №5:Uniface 基本的なRIAの作成方法を紹介するビデオ№5フレームインフレーム http://www.youtube.com/embed/3LrDx5zViQs №6:Uniface 基本的なRIAの作成方法を紹介するビデオ№6「フィールド値の変更」 http://www.youtube.com/

サンプル: onEdit extended triggerによるインクリメンタルサーチ機能

onEdit extended triggerによるインクリメンタルサーチ機能Author: takeuchi@fcs21.jp (richiet) onEdit extended triggerによるインクリメンタルサーチ機能  Uniface 9.6.04から、onEdit イベントが新しくTriggerに追加されました。  この機能は、ユーザによってEdit Box にデータが入力された後、イベントとしてトリガ イベントが実行されます。  この機能を使うことで、インクリメンタルサーチ機能を実現することが可能です。     インクリメンタルサーチとは、検索したい用語を1文字ずつ入力するごとに、その時点で該当する  候補一覧を表示しながら絞り込んでいく検索方法です。 [機能説明] 検索項目に文字入力後、Edit Box のonEditイベントが発生し、 Extended Triggersに定義されているTrigger onEditが実行されます。 Trigger onEdit には、入力された文字列を元に検索が実行されるコードを   予め定義しておくことで、インクリメンタルサーチ機能を実現できます。 [Trigger onEdit サンプルコード]   trigger onEdit  variables string vSearchProfile   endvariables   clear/e "CUSTOMER"   if (NAME.DUMENT != "")   vSearchProfile = "%%NAME.DUMENT%%%・*"   NAME.CUSTOMER = $lowercase(vSearchProfile)   retrieve/e "CUSTOMER"   if ($status != 0) NAME.CUSTOMER=""  endif   end; onEdit trigger [サンプル]  [内容]   検索項目に検索文字列を入力するごとに、その時点で該当する   候補一覧を表示しながら絞り込んでいく  [使用手順]   1. データベースにテーブル名、CUSTOMER が存在する場合は削除(Drop)してください。   2. ONEDITFRM.xmlファイルをUniface 9.6.04にインポートする   3. ONE