5.6.3.0 (2013/04/01) [Queryタグのエラーメッセージ変更] 「QueryTag Query処理が割り込まれました。DBTableModel は登録しません。」 のエラーメッセージをリソースERR0041から取得して表示するように変更します。 hayabusa.taglib.QueryTag#doEndTag() ラベルリソース ERR0041 [ColumnMarkerTag のフォーマッタ] columnMarkerタグで、[$XXXX],[#XXXX]機能を有効にするための属性を追加します。 通常の、View等では、[$XXXX] は、レンデラー処理された文字列を、[#XXXX]は、 ラベルリソースを出力しまが、columnMarkerでは、[$XXXX] は、URLEncode処理する 記号になっています。 過去の互換性の関係で、崩せない為、他のタグと同じ動きをさせる場合に限り、 useFormatDeco = "true" を設定する方法を取ります。 hayabusa.taglib.ColumnMarkerTag#release2() hayabusa.taglib.ColumnMarkerTag#setUseFormatDeco( final String val ) hayabusa.taglib.ColumnMarkerTag#doAfterBody() hayabusa.html.ViewMarker_MARKER#clear() hayabusa.html.ViewMarker_MARKER#setDBTableModel( final DBTableModel tbl ) hayabusa.html.ViewMarker_MARKER#getMarkerString( final int row,final int clm,final String value ) hybstaglib.tld ColumnMarkerTag に、useFormatDeco 属性追加 [ViewForm_ImageTimeBar のTips処理] ViewForm_ImageTimeBarの area タグで、alt 属性に、tips を表示している箇所を修正します。 alt 属性は、シングルクォーテーション で囲っているため、tipsにシングルクォーテーションが 含まれていると、HTMLの整合性が崩れます。 そこで、シングルクォーテーションをエスケープ処理("'" ⇒ "'" ) します。 plugin.view.ViewForm_ImageTimeBar#create( final int startNo, final int pageSize ) [HeadTag ガント系変更] ガント系で、useGantt2="true" で組み込むadjustGantTable.js で、初期起動するメソッドが 異なる為、外部から指定できるように、setAddEvent( String ) メソッドを追加します。 * adjustTable : テーブル分割 * adjustGant : ガント/積み上げガント * adjustTask : 積み上げガント(内部積み上げ) script として、addEvent( this, "load", adjustGant ); という形式を出力します。 汎用的に使えます。 hayabusa.taglib.HeadTag#release2() hayabusa.taglib.HeadTag#setAddEvent( final String method ) hayabusa.taglib.HeadTag#doEndTag() gf/jsp/GF7215/result.jsp adjustTableサンプル 左右分割(特殊) gf/jsp/GF7216/result.jsp adjustGantサンプル ガント(クライアント) gf/jsp/GF7217/result.jsp adjustGantサンプル ガント(積上) gf/jsp/GF7217/result.jsp adjustTaskサンプル ガント(内部積上) hybstaglib.tld HeadTag に、addEvent 属性追加 [IE10対応] イントラネット外からのアクセスでブラウザモードがIE10になる対応。 検索結果が表示されないため、dummy.htmlのDTD宣言を変更します。 jsp/common/dummy.html [入力可能プルダウン変更時のイベント発生] コンボボックスでプルダウンを変更した場合に元のテキストボックスでchangeイベントが発生していませんでした。 又、一括入力機能字にonChangeが上書きされて動作しないという問題もあったため、onChangeについては外部からの セットよりも内部でのセットが優先するように対応します。 jsp/common/default.js#selChanged(sel) plugin.column.Editor_INMENU#Editor_INMENU( final DBColumn clm ) plugin.column.Editor_IINDBMENU#Editor_INDBMENU( final DBColumn clm ) [build.xml の修正] ant の target が table の場合の build.xml を修正します。 これは、jsp/GF2140 のXMLファイル出力処理で、出力先のフォルダに、 SYSTEM_ID を追加するように変更したことに対応した処置です。 旧 filetemp/admin/xml/install/01_TABLE 新 filetemp/admin/GE/xml/install/01_TABLE [IE10対応その2] システムリソースUSE_MULTI_KEY_SELECTの初期値をtrueからfalseに変更します。 IE10ではこのスクリプト動作で不具合が発生する事と、 IE8以降ではブラウザの標準機能となっているため、標準では無効とします。 hayabusa.common/SystemData#USE_MULTI_KEY_SELECT 5.6.2.3 (2013/03/22) [ガントヘッダー] zoom="13" 追加 これは、zoom="2" の特殊系で、zoom="13"で指定できます。 月を横にまたがって表示、2段目に日付 3段目に曜日を出します。 hayabusa.taglib.GanttHeaderTag#makeZoom3( final String header ,final String upper ,final String lower ,final int add ) src/script/common/default.css src/script/common/option/adjustGantTable.js src/script/common/option/adjustGantTable.css ganttHeader の月別の色 で月表示のグループ化を行う場合の背景色の設定を class 属性で行います。 奇数月の色 は、oddColor 、偶数月の色は、evenColor です。 src/script/common/default.css 今回より、日付の開始(startDate)-終了(endDate) で、終了は「含まない」仕様ですが、「含む」仕様に変更します。 ただし、日付は、「含む」、時間は、「含まない」です。 例えば、2013/03/01 - 2013/03/01 は、2013/03/01 です。通常ひと月は、2013/03/01 - 2013/03/31 と指定します。 時間は、0700 - 2000 の場合、2000 は、含みません。よって、0700 - 0700 とすると、翌日の 0700 まで(24時間) を表します。少しややこしいですが、終了は、0700 - 1959 ではなく、0700 - 2000 です。 hayabusa.taglib.GanttHeaderTag#makeZoom( final String upper ,final String lower ,final int add, final boolean useMonth ) { hayabusa.taglib.GanttHeaderTag#makeZoom2( final int add ) { hayabusa.taglib.GanttHeaderTag#makeZoomStack( final String upper ,final String lower ,final int add, final boolean useMonth ) { [入力値自動変換機能] queryScriptPre.js → queryConvert.js 名称変更 キーワードも、QUERYPRE_SCRIPT_JS → QUERYCONV_SCRIPT_JS に変更 queryConvert.js の処理を行う、各種 DBTYPE の値を追加します。 src/script/common/queryScriptPre.js → queryConvert.js 名称変更 hayabusa.taglib.HeadTag#doEndTag() gf/jsp/GF6000/query.jsp [DBMENU の 0 非表示] 数字型のDBMENUを利用した場合、初期値が 0 の場合、データとしてゼロ文字列を 予め設定できない場合や、初期値が 0 の数字型などで、あえて画面に 0 などの 文字を表示させたくないケースで、使用します。 noDisplayVal に指定した値と同じ場合は、ゼロ文字列("")を返すようにします。 これは、レンデラーのみ対応です。(エディターはきちんと値を入れておく必要があります。) hayabusa.db.DBColumn#DBColumn( final String lang,final ColumnData clmData ,final LabelData lblData ,final CodeData cdData ) hayabusa.db.DBColumn#DBColumn( final DBColumnConfig config ) hayabusa.db.DBColumn#getConfig() hayabusa.db.DBColumn#getNoDisplayVal() hayabusa.db.DBColumnConfig#setNoDisplayVal( final String val ) hayabusa.db.DBColumnConfig#getNoDisplayVal() hayabusa.taglib.ColumnEditorTag#release2() hayabusa.taglib.ColumnEditorTag#getModifyConfig( final DBColumn dbColumn ) hayabusa.taglib.ColumnEditorTag#setNoDisplayVal( final String prm ) hybstaglib.tld ColumnEditorTag に、noDisplayVal 属性追加 plugin.column.Renderer_DBMENU.java 関連するメソッド plugin.column.Renderer_DECIMAL.java 関連するメソッド plugin.column.Renderer_MONEY.java 関連するメソッド plugin.column.Renderer_NUMBER.java 関連するメソッド [短ラベルの切り替え] columnタグで、長ラベルと短ラベルの切り替えを、行うための属性(useSLabel)が 実装済みだったので、これを、columnEditor タグにも移植します。 また、viewタグの viewFormType="HTMLTextField" の場合は、短ラベルを使うのではなく 長ラベルを使うように、セットします。 hayabusa.taglib.ColumnEditorTag#setUseSLabel( final String prm ) hayabusa.taglib.ColumnEditorTag#release2() hayabusa.taglib.ColumnEditorTag#getModifyConfig( final DBColumn dbColumn ) hayabusa.html.AbstractViewForm#setDBColumn( int dbColumn, DBColumn clm ) plugin.view.ViewForm_HTMLTextField#noSLabelSetting( final int clmNo ) plugin.view.ViewForm_HTMLTextField#create( final int startNo, final int pageSize ) plugin.view.ViewForm_HTMLFormatTextField#create( final int startNo, final int pageSize ) hybstaglib.tld ColumnEditorTag に、useSLabel 属性追加 useSlabel ⇒ useSLabel に統一。 tld が、useSLabel で作成済みだったので、メソッド側を変更します。 hayabusa\db\DBColumn.java(72): private final String useSlabel ; // 5.5.1.0 (2012/04/03) MENUのベース表示の切り替え hayabusa\db\DBColumn.java(124): useSlabel = "auto"; // 5.5.1.0 hayabusa\db\DBColumn.java(155): * @og.rev 5.5.1.0 (2012/04/03) useSlabel対応 hayabusa\db\DBColumn.java(179): useSlabel = config.getUseSlabel(); // 5.5.1.0 (2012/04/03) hayabusa\db\DBColumn.java(662): * @og.rev 5.5.1.0 (2012/04/03) useSlabel対応 hayabusa\db\DBColumn.java(700): config.setUseSlabel( useSlabel ); // 5.5.1.0 (2012/04/03) hayabusa\db\DBColumn.java(950): public String getUseSlabel() { hayabusa\db\DBColumn.java(951): return useSlabel ; hayabusa\db\DBColumnConfig.java(59): private String useSlabel = "auto"; // 5.5.1.0 (2012/04/03) MENU系でSLABELを利用するかどうか hayabusa\db\DBColumnConfig.java(782): public void setUseSlabel( final String use ) { hayabusa\db\DBColumnConfig.java(783): this.useSlabel = use; hayabusa\db\DBColumnConfig.java(793): public String getUseSlabel() { hayabusa\db\DBColumnConfig.java(794): return useSlabel; hayabusa\taglib\ColumnEditorTag.java(413): if( useSLabel != null ) { config.setUseSlabel( useSLabel ); } // 5.6.2.2 (2013/03/15) hayabusa\taglib\ColumnEditorTag.java(834): public void setUseSlabel( final String prm ) { hayabusa\taglib\ColumnTag.java(467): if( useSLabel != null ){ config.setUseSlabel( useSLabel ); } // 5.5.1.0 (2012/04/03) hayabusa\taglib\ColumnTag.java(1078): public void setUseSlabel( final String prm ) { plugin\column\Editor_DBMENU.java(80): private final String useSlabel ; // 5.5.1.0 (2012/04/03) plugin\column\Editor_DBMENU.java(99): useSlabel = "auto"; // 5.5.1.0 (2012/04/03) plugin\column\Editor_DBMENU.java(127): useSlabel = clm.getUseSlabel() ; // 5.5.1.0 (2012/04/03) plugin\column\Editor_DBMENU.java(182): // final boolean uslbl = !"true".equals(useSlabel) ? false : true; // 5.5.1.0 (2012/04/03) plugin\column\Editor_DBMENU.java(183): final boolean uslbl = "true".equalsIgnoreCase( useSlabel ); // 5.5.1.0 (2012/04/03) plugin\column\Editor_DBMENU.java(230): // final boolean uslbl = ("auto".equals(useSlabel) || "true".equals(useSlabel) ) ? true : false; // 5.5.1.0 (2012/04/03) plugin\column\Editor_DBMENU.java(231): final boolean uslbl = "auto".equalsIgnoreCase( useSlabel ) || "true".equalsIgnoreCase( useSlabel ); // 5.5.1.0 (2012/04/03) plugin\column\Editor_MENU.java(50): private final String useSlabel ; // 5.5.1.0 (2012/04/03) plugin\column\Editor_MENU.java(67): useSlabel = "auto"; // 5.5.1.0 (2012/04/03) plugin\column\Editor_MENU.java(95): useSlabel = clm.getUseSlabel() ; // 5.5.1.0 (2012/04/03) plugin\column\Editor_MENU.java(139): * @og.rev 5.5.1.0 (2012/04/03) useSlabel対応 plugin\column\Editor_MENU.java(147): // final boolean uslbl = !"true".equals(useSlabel) ? false : true; // 5.5.1.0 (2012/04/03) plugin\column\Editor_MENU.java(148): final boolean uslbl = "true".equalsIgnoreCase( useSlabel ); // 5.5.1.0 (2012/04/03) plugin\column\Editor_MENU.java(189): * @og.rev 5.5.1.0 (2012/04/03) useSlabel対応 plugin\column\Editor_MENU.java(198): // final boolean uslbl = ("auto".equals(useSlabel) || "true".equals(useSlabel) ) ? true : false; // 5.5.1.0 (2012/04/03) plugin\column\Editor_MENU.java(199): final boolean uslbl = "auto".equalsIgnoreCase( useSlabel ) || "true".equalsIgnoreCase( useSlabel ); // 5.5.1.0 (2012/04/03) plugin\column\Renderer_DBMENU.java(52): private final String useSlabel ; // 5.5.1.0 (2012/04/03) plugin\column\Renderer_DBMENU.java(67): useSlabel = "auto"; // 5.5.1.0 (2012/04/03) plugin\column\Renderer_DBMENU.java(85): useSlabel = clm.getUseSlabel() ; // 5.5.1.0 (2012/04/03) plugin\column\Renderer_DBMENU.java(131): // final boolean uslbl = !"true".equals(useSlabel) ? false : true; // 5.5.1.0 (2012/04/03) plugin\column\Renderer_DBMENU.java(132): final boolean uslbl = "true".equalsIgnoreCase( useSlabel ); // 5.5.1.0 (2012/04/03) plugin\column\Renderer_DBMENU.java(161): // final boolean uslbl = ("auto".equals(useSlabel) || "true".equals(useSlabel) ) ? true : false; // 5.5.1.0 (2012/04/03) plugin\column\Renderer_DBMENU.java(162): final boolean uslbl = "auto".equalsIgnoreCase( useSlabel ) || "true".equalsIgnoreCase( useSlabel ); // 5.5.1.0 (2012/04/03) plugin\column\Renderer_MENU.java(42): private final String useSlabel ; // 5.5.1.0 (2012/04/03) plugin\column\Renderer_MENU.java(55): useSlabel = "auto"; // 5.5.1.0 (2012/04/03) plugin\column\Renderer_MENU.java(74): useSlabel = clm.getUseSlabel() ; // 5.5.1.0 (2012/04/03) plugin\column\Renderer_MENU.java(104): // final boolean uslbl = "true".equalsIgnoreCase( useSlabel ); // 5.5.1.0 (2012/04/03) plugin\column\Renderer_MENU.java(105): final boolean uslbl = !"true".equals(useSlabel) ? false : true; // 5.5.1.0 (2012/04/03) plugin\column\Renderer_MENU.java(125): // final boolean uslbl = ("auto".equals(useSlabel) || "true".equals(useSlabel) ) ? true : false; // 5.5.1.0 (2012/04/03) plugin\column\Renderer_MENU.java(126): final boolean uslbl = "auto".equalsIgnoreCase( useSlabel ) || "true".equalsIgnoreCase( useSlabel ); // 5.5.1.0 (2012/04/03) plugin\view\ViewForm_HTMLTextField.java(133): config.setUseSlabel( "false" ); 5.6.2.2 (2013/03/15) [must/mustAny用のinput出力位置変更] columnTag等で必須項目の自動判定を行うためのinput出力の位置がtdの外となり、 HTMLとして不正ですので出力位置を変更します。 hayabusa.taglib.ColumnTag#makeTag() hayabusa.taglib.InputTag#makeTag() hayabusa.taglib.SelectTag#makeTag() [adjustGant.jsのfirefox対応] 5.6.2.1で対応できていなかった部分の対応を行います。 @ガントのコメントが表示できていなかった(fontサイズに単位追加) A画像のツールチップが出ていなかった(alt属性だけでなくtitle属性をセット) 又、このスクリプトで行っている左右分割でスクロールバーが出ない場合に 背景が白色となっていたのを画面の標準背景色と同色とします。 jsp\common\option\adjustGantTable.js jsp\common\option\adjustGantTable.css [クライアントガント修正] @マーカーの表示位置を、終了時刻側に表示可能にします。 日単位の表示の場合start属性の場合は今まで通り日の初めに、end属性の場合はバーの後ろに表示します。 時間指定の場合、時間まで指定しなかった場合start側は0:00として、end側は24:00として計算されます。 A時間指定のガントで休日判定ができていなかったため、対応 jsp\common\option\adjustGantTable.js 5.6.2.1 (2013/03/08) [キャッシュ] HeadTag で、JavaScript,CSSファイル等をキャッシュする場合の "v=" 属性で、Tomcat7のjspファイル部分圧縮(jspCommonX.X.X.X.jar)を 利用すると、ファイルのタイムスタンプが取得できなく、0 になるため、 その場合は、エンジンの作成日付を利用するようにします。 hayabusa.taglib.HeadTag#addScriptTag( final String filename, final StringBuilder buf ) hayabusa.taglib.HeadTag#addStyleTag( final String filename, final StringBuilder buf ) [adjustGantTable.js 組込み] adjustGantTable.js を、HeadTag に組み込みます。 useGantt2="true" で組み込むことになります。 組み込むのは、adjustGantTable.js、adjustGantTable.css と、script として、 addEvent( this, "load", adjustGant ); を出力します。 なお、useGantt2="true" にする場合は、自動的に、useScrollBar="false" にします。 hayabusa.taglib.HeadTag#release2() hayabusa.taglib.HeadTag#setUseGantt2( final String flag ) hybstaglib.tld useGantt2 属性追加 [firefoxのTIMESTAMP型の対応] Types.DATE と Types.TIMESTAMP で処理を分けます。 hayabusa.io.HybsJDBCCategoryDataset2#innerQuery( final Connection con, final String query ) [内部積上げガント修正] 休日積上げの有無の設定が効かない不具合を修正します。 plugin.view.ViewForm_HTMLStackedGanttTable#paramInit() [MICS関連修正] データベース登録時に、固定値カラムの設定を行う情報を管理するクラスを新規作成します。 plugin.query.DBConstValue_MICS.java [Javadoc警告修正] JavaDoc処理で、警告(引数文字違いなど)が発生した箇所を修正します。 hayabusa.develop.JspEnumeration.java:249: 警告 - @param argument "arg"はパラメータ名ではありません。 hayabusa.io.HybsTimeSeriesCollection.java:82: 警告 - @param argument "con"はパラメータ名ではありません。 hayabusa.io.HybsTimeSeriesCollection.java:82: 警告 - @param argument "query"はパラメータ名ではありません。 fukurou.business.ArrayTableModel.java:171 警告2:RTN配列 fukurou.xml.OGElement.java:326 警告3:@Overrideなし hayabusa.io.ChartCreate.java:827 警告3:RTNタイプ plugin.column.Editor_YMDMENU.java:103 警告3:@Overrideなし plugin.column.Editor_NUMMENU.java:82 警告3:@Overrideなし plugin.column.Editor_HMMENU.java:86 警告3:@Overrideなし [内部積上げガントJavaScript対応] タグのみ作成していた内部積上げガントのJavaScript側の対応を組み込みます。 通常と同様common/option/adjustGantTable.jsを利用します。 利用するJSPではaddEvent(this,"load",adjustTask)をcallします。 表示するためにはiTaskタグでfixedColsを指定して下さい。 jsp\common\option\adjustGantTable.js gf\jsp\GF7218 [クライアントガントcolorNo変更] iGnatBarのcolorNo属性の指定を変更します。 "0":"blue", "1":"orange", "2":"pink", "3":"purple", "4":"yellow", "5":"violet", "6":"green", "7":"navy" , "8":"chocolate","9":"teal"の10色とした上で、colorNoの最終桁に従って色を出力するように変更します。 (正確には最終桁の文字コード+2を10で割った余りを利用) jsp\common\option\adjustGantTable.js gf\jsp\GF7218 [firefox対応] iFieldタグを利用した行⇒テーブル変換機能について、firefox対応を行います。 主なの修正点は以下です。 @独自タグの属性の取得を.xxxではなくgetAttributeに変更 Ajsp中の独自タグ(iField)の書き方をのように終了タグ付きに変更 Bwidth,heightの値をセットする際に"px"を付加 CinsertRow()は引数を追加 DinnerTextはjQueryのtext()を利用するように変更 jsp\common\option\adjustField.js gf\jsp\GF7214 iMatrixを利用した配置図/座席表についてfirefox対応を行います。 主な修正点はiFieldと同様です。 jsp\common\option\adjustMatrix.js gf\jsp\GF7213 iGantBarを利用したクライアントガントについてfirefox対応を行います。 主な修正点はiFieldとほぼ同様で、他にfontがmonospace時のletter-spacingの設定をfrefox向けに追加しています。 letter-spacingの仕様上、一部zoomの表示が正しく表示されません。 又、現段階では一部情報が表示されない等、完全にIEと同一表示となっているわけではありません。 jsp\common\option\adjustGantTable.js jsp\common\option\adjustGantTable.css jsp\common\default.css gf\jsp\GF7216 gf\jsp\GF7217 gf\jsp\GF7218