intra-mart Accel Kaiden! プログラミングガイド 第12版 2020-04-01

5.2.2. 経費区分マスタ検索

経費区分マスタ検索のサンプルソースです。
本サンプルソースは「intra-mart Accel Kaiden! ワークフローモジュール 2.0.2」から抜粋したソースです。

5.2.2.1. 一覧

src
└─main
    ├─generated
    │  └─jp
    │      └─co
    │          └─slcs
    │              └─kaiden2
    │                  └─product_workflow
    │                      └─foundation
    │                          └─model
    │                              ├─entity
    │                              │      K30mExpType.java
    │                              │      K30mExpTypeNames.java
    │                              └─service
    │                                      K30mExpTypeCondition.java
    │                                      K30mExpTypeService.java
    ├─java
    │  └─jp
    │      └─co
    │          └─slcs
    │              └─kaiden2
    │                  └─product_workflow
    │                      ├─feature
    │                      │  ├─action
    │                      │  │  └─kaiden
    │                      │  │      └─master
    │                      │  │              ExpTypeSearchAction.java
    │                      │  ├─dto
    │                      │  │  └─kaiden
    │                      │  │      └─master
    │                      │  │              ExpTypeSearchDto.java
    │                      │  └─form
    │                      │      └─kaiden
    │                      │          └─master
    │                      │                  ExpTypeSearchForm.java
    │                      └─foundation
    │                          ├─manager
    │                          │  └─exptype
    │                          │      │  ExpTypeManager.java
    │                          │      │  ExpTypeManagerDto.java
    │                          │      │  ExpTypeManagerDtoFieldName.java
    │                          │      └─impl
    │                          │              ExpTypeManagerImpl.java
    │                          └─taglib
    │                                  MstSearchExpType.java
    ├─resources
    │  └─META-INF
    │      ├─sql
    │      │  └─jp
    │      │      └─co
    │      │          └─slcs
    │      │              └─kaiden2
    │      │                  └─product_workflow
    │      │                      └─foundation
    │      │                          └─model
    │      │                              └─service
    │      │                                  └─K30mExpTypeService
    │      │                                          selectView.sql
    │      └─tld
    │          └─kaidenMstSearchWorkflow
    │                  KaidenMstSearchWorkflow.tld
    └─webapp
        └─WEB-INF
            └─classes
                └─jp
                    └─co
                        └─slcs
                            └─kaiden2
                                └─product_workflow
                                    └─feature
                                        └─action
                                            └─kaiden
                                                └─master
                                                        ExpTypeSearchSettings.xml

5.2.2.2. Java

5.2.2.2.1. Action

  • Path
    src/main/java/jp/co/slcs/kaiden2/product_workflow/feature/action/kaiden/master/ExpTypeSearchAction.java
package jp.co.slcs.kaiden2.product_workflow.feature.action.kaiden.master;

import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import jp.co.slcs.kaiden2.base.foundation.conf.GenericFlag;
import jp.co.slcs.kaiden2.base.foundation.exception.KaidenSystemException;
import jp.co.slcs.kaiden2.base.foundation.helper.ContextHelper;
import jp.co.slcs.kaiden2.base.foundation.helper.DateHelper;
import jp.co.slcs.kaiden2.base.foundation.manager.KeywordsCriteriaDto;
import jp.co.slcs.kaiden2.base.foundation.master.AbstractMasterSearchAction;
import jp.co.slcs.kaiden2.base.foundation.master.GenericSearchSettingsDto;
import jp.co.slcs.kaiden2.base.foundation.model.dto.KaidenDto;
import jp.co.slcs.kaiden2.base.foundation.model.service.SqlResultFilterIF;
import jp.co.slcs.kaiden2.base.foundation.util.ConvertForJsonSource;
import jp.co.slcs.kaiden2.base.foundation.util.HtmlEncodeUtil;
import jp.co.slcs.kaiden2.base.foundation.util.StringUtil;
import jp.co.slcs.kaiden2.product_workflow.feature.dto.kaiden.master.ExpTypeSearchDto;
import jp.co.slcs.kaiden2.product_workflow.feature.form.kaiden.master.ExpTypeSearchForm;
import jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManager;
import jp.co.slcs.kaiden2.product_workflow.foundation.manager.master_filtering_filter.exp_type.MasterFilteringExpTypeFilter;
import net.arnx.jsonic.JSON;
import org.seasar.struts.annotation.ActionForm;
import org.seasar.struts.annotation.Execute;

/**
 * 経費区分マスタ検索(Action).
 * 
 * @author Sumitomo Life Information Systems Co.,Ltd.
 */
public class ExpTypeSearchAction extends AbstractMasterSearchAction {
    
    /** ExpTypeSearchDto. */
    @Resource
    public ExpTypeSearchDto expTypeSearchDto;
    
    /** ExpTypeSearchForm. */
    @ActionForm
    @Resource
    public ExpTypeSearchForm expTypeSearchForm;
    
    /** ExpTypeManager. */
    @Resource
    public ExpTypeManager expTypeManager;
    
    /** ContextHelper. */
    @Resource
    public ContextHelper contextHelper;
    
    /** DateHelper. */
    @Resource
    public DateHelper dateHelper;
    
    /** MasterFilteringExpTypeFilter. */
    @Resource
    public MasterFilteringExpTypeFilter masterFilteringExpTypeFilter;
    
    /**
     * 検索.
     * <p>
     * 以下の設定ファイルに従って検索を行う.<br />
     * WEB-INF/classes/jp/co/slcs/kaiden2/product_workflow/feature/action/kaiden/master/ExpTypeSearchSettings.xml
     * </p>
     * <p>
     * 検索条件は以下の通り
     * </p>
     * <table border="1">
     * <tr>
     * <th>フィールド</th>
     * <th>条件</th>
     * <th>値の取得元</th>
     * <th>省略</th>
     * </tr>
     * <tr>
     * <td>会社コード</td>
     * <td>完全一致</td>
     * <td>画面リクエスト</td>
     * <td>不可</td>
     * </tr>
     * <tr>
     * <td>経費区分トコード</td>
     * <td>完全一致</td>
     * <td>画面リクエスト</td>
     * <td>可</td>
     * </tr>
     * <tr>
     * <td>ロケールID</td>
     * <td>完全一致</td>
     * <td>ログインユーザのロケールID</td>
     * <td>-</td>
     * </tr>
     * <tr>
     * <td>検索基準日</td>
     * <td>開始日-終了日の範囲</td>
     * <td>画面リクエスト</td>
     * <td>可(省略時はシステム日付を利用)</td>
     * </tr>
     * </table>
     * 
     * @return 汎用検索JSP
     * @throws KaidenSystemException XML読み込み例外
     */
    @SuppressWarnings("unchecked")
    @Execute(validator = false)
    public String index() throws KaidenSystemException {
        searchDto = expTypeSearchDto;
        searchDto.searchKeywords = expTypeSearchForm.searchKeyword;
        // 設定ファイル読み込み
        searchDto.settings = new GenericSearchSettingsDto(readSetting(ExpTypeSearchAction.class));
        
        // キーワード条件
        KeywordsCriteriaDto keywordsCriteria = createKeywordCriteria(expTypeSearchForm.searchKeyword,
                expTypeSearchDto.settings);
        
        List<Map<String, Object>> searchResult = new ArrayList<Map<String, Object>>();
        // 検索条件の作成
        SearchCriteria criteria = new SearchCriteria();
        if (StringUtil.isNotEmpty(expTypeSearchForm.searchCriteriaCompany)) {
            criteria.companyCd = expTypeSearchForm.searchCriteriaCompany;
            
            if (StringUtil.isNotEmpty(expTypeSearchForm.searchCriteriaDate)) {
                criteria.searchCriteriaDate = dateHelper.toTimestamp(expTypeSearchForm.searchCriteriaDate);
            } else {
                criteria.searchCriteriaDate = dateHelper.getNowTimestamp();
            }
            if (StringUtil.isNotEmpty(expTypeSearchForm.expTypeCd)) {
                criteria.expTypeCd = expTypeSearchForm.expTypeCd;
            }
            if ("true".equals(expTypeSearchForm.includeDisabled)) {
                criteria.deleteFlag = null;
            } else {
                criteria.deleteFlag = GenericFlag.OFF.getCode();
            }
            criteria.localeId = contextHelper.getLoginUserLocale().toString();
            
            SqlResultFilterIF filter = masterFilteringExpTypeFilter
                    .getFilter(expTypeSearchForm.mstSearchConditionJsonDefault);
            
            Map<String, Object> ret = expTypeManager.selectList4MstSearch(criteria,
                    getOrder(searchDto.settings.orderJson), keywordsCriteria, new SqlResultFilterIF[] {filter});
            ConvertForJsonSource conv = new ConvertForJsonSource();
            for (Object dto : (List<Object>) ret.get("resultList")) {
                Map<String, Object> row = conv.dtoConvert((KaidenDto) dto);
                row.put("rowDataJson", HtmlEncodeUtil.escapeHtmlValue(JSON.encode(row)));
                searchResult.add(row);
            }
        }
        expTypeSearchDto.searchResult = searchResult;
        return GENERIC_SEARCH_JSP;
    }
    
    /**
     * 検索条件.
     * 
     * @author Sumitomo Life Information Systems Co.,Ltd.
     */
    public static class SearchCriteria extends KaidenDto {
        
        /** 会社コード. */
        public String companyCd;
        /** 経費区分コード. */
        public String expTypeCd;
        /** 削除フラグ. */
        public String deleteFlag;
        /** ロケールID. */
        public String localeId;
        /** 検索基準日. */
        public Timestamp searchCriteriaDate;
    }
}

5.2.2.2.2. Dto

  • Path
    src/main/java/jp/co/slcs/kaiden2/product_workflow/feature/dto/kaiden/master/ExpTypeSearchDto.java
package jp.co.slcs.kaiden2.product_workflow.feature.dto.kaiden.master;

import jp.co.slcs.kaiden2.base.foundation.master.AbstractMasterSearchDto;

/**
 * 経費区分マスタ検索(DTO).
 * 
 * @author Sumitomo Life Information Systems Co.,Ltd.
 */
public class ExpTypeSearchDto extends AbstractMasterSearchDto {
    
}

5.2.2.2.3. Form

  • Path
    src/main/java/jp/co/slcs/kaiden2/product_workflow/feature/form/kaiden/master/ExpTypeSearchForm.java
package jp.co.slcs.kaiden2.product_workflow.feature.form.kaiden.master;

import jp.co.slcs.kaiden2.base.foundation.master.AbstractMasterSearchForm;

/**
 * 経費区分マスタ検索(From).
 * 
 * @author Sumitomo Life Information Systems Co.,Ltd.
 */
public class ExpTypeSearchForm extends AbstractMasterSearchForm {
    
    /** 経費区分コード. */
    public String expTypeCd;
}

5.2.2.2.4. Manager

  • Path
    src/main/java/jp/co/slcs/kaiden2/product_workflow/foundation/manager/exptype/ExpTypeManager.java
package jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype;

import java.util.List;
import java.util.Map;
import jp.co.slcs.kaiden2.base.foundation.manager.KeywordsCriteriaDto;
import jp.co.slcs.kaiden2.base.foundation.master.TermMasterManagerForJob;
import jp.co.slcs.kaiden2.base.foundation.model.dto.KaidenDto;
import jp.co.slcs.kaiden2.base.foundation.model.dto.OrderDto;
import jp.co.slcs.kaiden2.base.foundation.model.service.SqlResultFilterIF;
import jp.co.slcs.kaiden2.base.foundation.util.validate.model.dto.ValidateDefsDto;

/**
 * 経費区分マスタへの各種操作を提供するAPIのinterface.<br>
 * 
 * @author Sumitomo Life Information Systems Co.,Ltd.
 */
public interface ExpTypeManager extends TermMasterManagerForJob<ExpTypeManagerDto> {
    
    /** 経費区分コード. */
    public static final int EXP_TYPE_CD_LEN = 100;
    
    /** 経費区分名称. */
    public static final int EXP_TYPE_NAME_LEN = 250;
    
    /** 経費区分カテゴリ. */
    public static final int EXP_TYPE_CATEGORY_LEN = 250;
    
    /** 勘定科目コード. */
    public static final int ACCOUNT_CD_LEN = 100;
    
    /** 税区分コード. */
    public static final int TAX_TYPE_CD_LEN = 100;
    
    /** ソートキー. */
    public static final int SORT_KEY_LEN = 15;
    
    /**
     * 新規登録用の検証定義リストを返却します.
     * 
     * @return バリデート実行クラス用パラメタDTOリスト
     */
    public List<ValidateDefsDto> getValidateDefsDtoList4Entry();
    
    /**
     * 更新登録用の検証定義リストを返却します.
     * 
     * @return バリデート実行クラス用パラメタDTOリスト
     */
    public List<ValidateDefsDto> getValidateDefsDtoList4Renew();
    
    /**
     * マスタ検索部品向け 一覧取得.
     * 
     * @param criteria 検索条件
     * @param order ソート順
     * @param filter フィルタークラス
     * @return 検索結果
     */
    public Map<String, Object> selectList4MstSearch(KaidenDto criteria, List<OrderDto> order,
            KeywordsCriteriaDto keywordsCriteria, SqlResultFilterIF[] filter);
    
}

5.2.2.2.5. Manager(実装)

  • Path
    src/main/java/jp/co/slcs/kaiden2/product_workflow/foundation/manager/exptype/impl/ExpTypeManagerImpl.java
package jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.impl;

import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldLength.TERM_CD_LEN;
import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_A;
import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_B;
import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_C;
import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_D;
import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_E;
import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_F;
import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_G;
import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_H;
import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_I;
import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_J;
import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_COMPANY_EXISTS;
import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_DATE;
import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_DATE_MIN;
import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_FLAG;
import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_INTEGER;
import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_KAIDEN_ID;
import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_LOCALE;
import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_MAX_LENGTH;
import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_REQUIRED;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.ACCOUNT_CD;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.ACCOUNT_NAME;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.COMPANY_CD;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.COMPANY_NAME;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.DELETE_FLAG;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.END_DATE;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.EXP_TYPE_CATEGORY;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.EXP_TYPE_CD;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.EXP_TYPE_NAME;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.LOCALE_ID;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.SORT_KEY;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.START_DATE;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.TAX_TYPE_CD;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.TAX_TYPE_NAME;
import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.TERM_CD;
import static jp.co.slcs.kaiden2.product_workflow.foundation.util.validate.conf.ConstValidationIdKaidenProductWorkflow.VALID_ACCOUNT_EXISTS;
import static jp.co.slcs.kaiden2.product_workflow.foundation.util.validate.conf.ConstValidationIdKaidenProductWorkflow.VALID_TAX_TYPE_EXISTS;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import jp.co.slcs.kaiden2.base.foundation.conf.GenericFlag;
import jp.co.slcs.kaiden2.base.foundation.exception.KaidenApplicationException;
import jp.co.slcs.kaiden2.base.foundation.exception.KaidenDuplicationEntryException;
import jp.co.slcs.kaiden2.base.foundation.exception.KaidenHaventAuthorityToCompanyException;
import jp.co.slcs.kaiden2.base.foundation.exception.KaidenIllegalParametersException;
import jp.co.slcs.kaiden2.base.foundation.exception.KaidenOptimisticLockException;
import jp.co.slcs.kaiden2.base.foundation.exception.KaidenSystemException;
import jp.co.slcs.kaiden2.base.foundation.exception.KaidenValidateException;
import jp.co.slcs.kaiden2.base.foundation.manager.AbstractTermMasterManager;
import jp.co.slcs.kaiden2.base.foundation.manager.AuthorityCriteriaDto;
import jp.co.slcs.kaiden2.base.foundation.manager.KeywordsCriteriaDto;
import jp.co.slcs.kaiden2.base.foundation.manager.common.IterateBusinessLogicIF;
import jp.co.slcs.kaiden2.base.foundation.model.dto.KaidenDto;
import jp.co.slcs.kaiden2.base.foundation.model.dto.OrderDto;
import jp.co.slcs.kaiden2.base.foundation.model.service.SqlResultFilterIF;
import jp.co.slcs.kaiden2.base.foundation.util.CollectionUtil;
import jp.co.slcs.kaiden2.base.foundation.util.StringUtil;
import jp.co.slcs.kaiden2.base.foundation.util.validate.KaidenValidateResult;
import jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ErrorMode;
import jp.co.slcs.kaiden2.base.foundation.util.validate.model.dto.ValidateDefsDto;
import jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManager;
import jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDto;
import jp.co.slcs.kaiden2.product_workflow.foundation.model.service.K30mExpTypeService;
import org.seasar.framework.beans.util.Beans;

/**
 * 経費区分マスタへの各種操作を提供するAPI.<br>
 * <br>
 * <p>
 * 本APIは、主にデータベース操作を行いますが、より業務的な機能を付加した操作を提供します。<br>
 * 使用する際には、{@link ExpTypeManagerDto}クラスまたはそのリストをパラメータとして渡すと、<br>
 * {@link ExpTypeManagerDto}クラスまたはそのリストが戻り値として返却されます。<br>
 * (一部例外あり。各APIを参照。)<br>
 * <br>
 * <b>機能一覧(共通)</b>
 * <table border="1">
 * <tr>
 * <th>機能概要</th>
 * <th>メソッド</th>
 * <th>カテゴリ</th>
 * <th>備考</th>
 * </tr>
 * <tr>
 * <tr>
 * <td>主キー検索</td>
 * <td>select</td>
 * <td>主キー検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>主キー検索(認可設定無視)</td>
 * <td>selectIgnoreAuthCompany</td>
 * <td>主キー検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>汎用検索</td>
 * <td>selectList</td>
 * <td>汎用検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>汎用検索(認可設定無視)</td>
 * <td>selectListIgnoreAuthCompany</td>
 * <td>汎用検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>ロケール検索</td>
 * <td>selectLocales</td>
 * <td>ロケール検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>ロケール検索(認可設定無視)</td>
 * <td>selectLocalesIgnoreAuthCompany</td>
 * <td>ロケール検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>参照検索</td>
 * <td>selectListWithReference</td>
 * <td>参照検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>参照検索(認可設定無視)</td>
 * <td>selectListWithReferenceIgnoreAuthCompany</td>
 * <td>参照検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>キーワード検索</td>
 * <td>selectListKeywordFilter</td>
 * <td>キーワード検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>キーワード検索(認可設定無視)</td>
 * <td>selectListKeywordFilterIgnoreAuthCompany</td>
 * <td>キーワード検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>有効化</td>
 * <td>toEnabled</td>
 * <td>削除フラグ更新</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>有効化(認可設定無視)</td>
 * <td>toEnabledIgnoreAuthCompany</td>
 * <td>削除フラグ更新</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>無効化</td>
 * <td>toDisabled</td>
 * <td>削除フラグ更新</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>無効化(認可設定無視)</td>
 * <td>toDisabledIgnoreAuthCompany</td>
 * <td>削除フラグ更新</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>登録</td>
 * <td>entry</td>
 * <td>登録</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>登録(認可設定無視)</td>
 * <td>entryIgnoreAuthCompany</td>
 * <td>登録</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>削除</td>
 * <td>remove</td>
 * <td>削除</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>削除(認可設定無視)</td>
 * <td>removeIgnoreAuthCompany</td>
 * <td>削除</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>更新</td>
 * <td>renew</td>
 * <td>更新</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>更新(認可設定無視)</td>
 * <td>renewIgnoreAuthCompany</td>
 * <td>更新</td>
 * <td>&nbsp;</td>
 * </tr>
 * </table>
 * <br>
 * <b>機能一覧(期間化)</b>
 * <table border="1">
 * <tr>
 * <th>機能概要</th>
 * <th>メソッド</th>
 * <th>カテゴリ</th>
 * <th>備考</th>
 * </tr>
 * <tr>
 * <td>期間検索</td>
 * <td>selectTerms</td>
 * <td>期間検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>期間検索(認可設定無視)</td>
 * <td>selectTermsIgnoreAuthCompany</td>
 * <td>期間検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>基準日指定検索</td>
 * <td>selectListIncluedsSearchDate</td>
 * <td>基準日指定検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>基準日指定検索(認可設定無視)</td>
 * <td>selectListIncluedsSearchDateIgnoreAuthCompany</td>
 * <td>基準日指定検索</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>期間分割</td>
 * <td>divideTerm</td>
 * <td>期間分割</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>期間分割(認可設定無視)</td>
 * <td>divideTermIgnoreAuthCompany</td>
 * <td>期間分割</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>期間変更</td>
 * <td>moveTerm</td>
 * <td>期間変更</td>
 * <td>&nbsp;</td>
 * </tr>
 * <tr>
 * <td>期間変更(認可設定無視)</td>
 * <td>moveTermIgnoreAuthCompany</td>
 * <td>期間変更</td>
 * <td>&nbsp;</td>
 * </tr>
 * </table>
 * <br>
 * <br>
 * 機能に対するI/Oを以下に示します。(上記一覧のカテゴリ単位)<br>
 * <br>
 * 【IN】
 * <table border="1">
 * <tr>
 * <td align="right">●</td>
 * <td>:必須</td>
 * </tr>
 * <tr>
 * <td align="right">△</td>
 * <td>:任意、検索時完全一致条件</td>
 * </tr>
 * <tr>
 * <td align="right">▲</td>
 * <td>:任意、検索時部分一致条件</td>
 * </tr>
 * <tr>
 * <td align="right">×</td>
 * <td>:不要(設定されていても無視します。)</td>
 * </tr>
 * <tr>
 * <td align="right">☆</td>
 * <td>:各APIの説明を参照</td>
 * </tr>
 * <tr>
 * <td align="right">-</td>
 * <td>:対象外</td>
 * </tr>
 * </table>
 * <br>
 * 【OUT】
 * <table border="1">
 * <tr>
 * <td align="right">○</td>
 * <td>:あり</td>
 * </tr>
 * <tr>
 * <td align="right">×</td>
 * <td>:なし</td>
 * </tr>
 * <tr>
 * <td align="right">-</td>
 * <td>:対象外</td>
 * </tr>
 * </table>
 * <br>
 * <b>DTOクラスと機能のI/Oマトリクス(共通)</b>
 * <table border="1">
 * <tr>
 * <th rowspan="2">DTOフィールド論理名</th>
 * <th rowspan="2">DTOフィールド名</th>
 * <th colspan="2">主キー<br>
 * 検索</th>
 * <th colspan="2">汎用<br>
 * 検索</th>
 * <th colspan="2">ロケール<br>
 * 検索</th>
 * <th colspan="2">参照<br>
 * 検索</th>
 * <th colspan="2">キーワード<br>
 * 検索</th>
 * <th colspan="2">削除フラグ<br>
 * 更新</th>
 * <th colspan="2">登録</th>
 * <th colspan="2">削除</th>
 * <th colspan="2">更新</th>
 * </tr>
 * <tr>
 * <th>I</th>
 * <th>O</th>
 * <th>I</th>
 * <th>O</th>
 * <th>I</th>
 * <th>O</th>
 * <th>I</th>
 * <th>O</th>
 * <th>I</th>
 * <th>O</th>
 * <th>I</th>
 * <th>O</th>
 * <th>I</th>
 * <th>O</th>
 * <th>I</th>
 * <th>O</th>
 * <th>I</th>
 * <th>O</th>
 * </tr>
 * <tr>
 * <td><b>会社コード(*)</b></td>
 * <td><b>companyCd</b></td>
 * <td align="center">●</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">●</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td><b>経費区分コード(*)</b></td>
 * <td><b>expTypeCd</b></td>
 * <td align="center">●</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">●</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td><b>期間コード(*)</b></td>
 * <td><b>termCd</b></td>
 * <td align="center">●</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">●</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td><b>ロケールID(*)</b></td>
 * <td><b>localeId</b></td>
 * <td align="center">●</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>経費区分名称</td>
 * <td>expTypeName</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">▲</td>
 * <td align="center">○</td>
 * <td align="center">▲</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>経費区分カテゴリ</td>
 * <td>expTypeCategory</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">▲</td>
 * <td align="center">○</td>
 * <td align="center">▲</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>開始日</td>
 * <td>startDate</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>終了日</td>
 * <td>endDate</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>勘定科目コード</td>
 * <td>accountCd</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>税区分コード</td>
 * <td>taxTypeCd</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>ソートキー</td>
 * <td>sortKey</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>削除フラグ</td>
 * <td>deleteFlag</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>予備項目A~J</td>
 * <td>extensionA~J</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">▲</td>
 * <td align="center">○</td>
 * <td align="center">▲</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>登録日時</td>
 * <td>entryTs</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>登録者コード</td>
 * <td>entryUserCd</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>更新カウンタ</td>
 * <td>renewCnt</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">☆</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>更新日時</td>
 * <td>renewTs</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>更新者コード</td>
 * <td>renewUserCd</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">△</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>会社名称</td>
 * <td>companyName</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">▲</td>
 * <td align="center">○</td>
 * <td align="center">▲</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>勘定科目名称</td>
 * <td>accountName</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">▲</td>
 * <td align="center">○</td>
 * <td align="center">▲</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>税区分名称</td>
 * <td>taxTypeName</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">▲</td>
 * <td align="center">○</td>
 * <td align="center">▲</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>検索基準日</td>
 * <td>searchCriteriaDate</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">☆</td>
 * <td align="center">-</td>
 * <td align="center">☆</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * </table>
 * <br>
 * <b>DTOクラスと機能のI/Oマトリクス(期間化)</b>
 * <table border="1">
 * <tr>
 * <th rowspan="2">DTOフィールド論理名</th>
 * <th rowspan="2">DTOフィールド名</th>
 * <th colspan="2">期間検索</th>
 * <th colspan="2">基準日指定<br>
 * 検索</th>
 * <th colspan="2">期間分割</th>
 * <th colspan="2">期間変更</th>
 * </tr>
 * <tr>
 * <th>I</th>
 * <th>O</th>
 * <th>I</th>
 * <th>O</th>
 * <th>I</th>
 * <th>O</th>
 * <th>I</th>
 * <th>O</th>
 * </tr>
 * <tr>
 * <td><b>会社コード(*)</b></td>
 * <td><b>companyCd</b></td>
 * <td align="center">●</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td><b>経費区分コード(*)</b></td>
 * <td><b>expTypeCd</b></td>
 * <td align="center">●</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td><b>期間コード(*)</b></td>
 * <td><b>termCd</b></td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td><b>ロケールID(*)</b></td>
 * <td><b>localeId</b></td>
 * <td align="center">●</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>経費区分名称</td>
 * <td>expTypeName</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>経費区分カテゴリ</td>
 * <td>expTypeCategory</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>開始日</td>
 * <td>startDate</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>終了日</td>
 * <td>endDate</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>勘定科目コード</td>
 * <td>accountCd</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>税区分コード</td>
 * <td>taxTypeCd</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>ソートキー</td>
 * <td>sortKey</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>削除フラグ</td>
 * <td>deleteFlag</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>予備項目A~J</td>
 * <td>extensionA~J</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>登録日時</td>
 * <td>entryTs</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>登録者コード</td>
 * <td>entryUserCd</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>更新カウンタ</td>
 * <td>renewCnt</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">☆</td>
 * <td align="center">-</td>
 * <td align="center">☆</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>更新日時</td>
 * <td>renewTs</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <tr>
 * <td>更新者コード</td>
 * <td>renewUserCd</td>
 * <td align="center">×</td>
 * <td align="center">○</td>
 * <td align="center">△</td>
 * <td align="center">○</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>会社名称</td>
 * <td>companyName</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>勘定科目名称</td>
 * <td>accountName</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>税区分名称</td>
 * <td>taxTypeName</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * <tr>
 * <td>検索基準日</td>
 * <td>searchCriteriaDate</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">●</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * <td align="center">×</td>
 * <td align="center">-</td>
 * </tr>
 * </table>
 * <br>
 * テーブルのPK項目にはフィールド名に(*)を付与しています。<br>
 * </p>
 * 
 * @author Sumitomo Life Information Systems Co.,Ltd.
 */
public class ExpTypeManagerImpl extends AbstractTermMasterManager<ExpTypeManagerDto> implements ExpTypeManager {
    
    /** K30mExpTypeService. */
    @Resource
    protected K30mExpTypeService k30mExpTypeService;
    
    /**
     * {@inheritDoc}
     */
    @Override
    public ExpTypeManagerDto select(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria) {
        return super.select(k30mExpTypeService, criteria, authCriteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public ExpTypeManagerDto selectIgnoreAuthCompany(ExpTypeManagerDto criteria) {
        return super.selectIgnoreAuthCompany(k30mExpTypeService, criteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public List<ExpTypeManagerDto> selectList(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria,
            List<OrderDto> order) {
        return super.selectList(k30mExpTypeService, criteria, authCriteria, order);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public List<ExpTypeManagerDto> selectListIgnoreAuthCompany(ExpTypeManagerDto criteria, List<OrderDto> order) {
        return super.selectListIgnoreAuthority(k30mExpTypeService, criteria, order);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public List<ExpTypeManagerDto> selectLocales(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria) {
        return super.selectLocales(k30mExpTypeService, criteria, authCriteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public List<ExpTypeManagerDto> selectLocalesIgnoreAuthCompany(ExpTypeManagerDto criteria) {
        return super.selectLocalesIgnoreAuthCompany(k30mExpTypeService, criteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public List<ExpTypeManagerDto> selectListWithReference(KaidenDto criteria, List<OrderDto> order,
            AuthorityCriteriaDto authCriteria) {
        String[] likeTarget = {EXP_TYPE_NAME, EXP_TYPE_CATEGORY, EXTENSION_A, EXTENSION_B, EXTENSION_C, EXTENSION_D,
                EXTENSION_E, EXTENSION_F, EXTENSION_G, EXTENSION_H, EXTENSION_I, EXTENSION_J, COMPANY_NAME,
                ACCOUNT_NAME, TAX_TYPE_NAME};
        return super.selectBySql(k30mExpTypeService, "selectView.sql", criteria, order, authCriteria, likeTarget);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public List<ExpTypeManagerDto> selectListWithReferenceIgnoreAuthCompany(KaidenDto criteria, List<OrderDto> order) {
        String[] likeTarget = {EXP_TYPE_NAME, EXP_TYPE_CATEGORY, EXTENSION_A, EXTENSION_B, EXTENSION_C, EXTENSION_D,
                EXTENSION_E, EXTENSION_F, EXTENSION_G, EXTENSION_H, EXTENSION_I, EXTENSION_J, COMPANY_NAME,
                ACCOUNT_NAME, TAX_TYPE_NAME};
        return super.selectBySqlIgnoreAuthority(k30mExpTypeService, "selectView.sql", criteria, order, likeTarget);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public Map<String, Object> selectListKeywordFilter(KaidenDto criteria, List<OrderDto> order,
            KeywordsCriteriaDto keywordsCriteria, AuthorityCriteriaDto authCriteria) {
        String[] likeTarget = {EXP_TYPE_NAME, EXP_TYPE_CATEGORY, EXTENSION_A, EXTENSION_B, EXTENSION_C, EXTENSION_D,
                EXTENSION_E, EXTENSION_F, EXTENSION_G, EXTENSION_H, EXTENSION_I, EXTENSION_J, COMPANY_NAME,
                ACCOUNT_NAME, TAX_TYPE_NAME};
        return super.selectListByKeywords(k30mExpTypeService, "selectView.sql", criteria, order, keywordsCriteria,
                authCriteria, likeTarget);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public Map<String, Object> selectListKeywordFilterIgnoreAuthCompany(KaidenDto criteria, List<OrderDto> order,
            KeywordsCriteriaDto keywordsCriteria) {
        String[] likeTarget = {EXP_TYPE_NAME, EXP_TYPE_CATEGORY, EXTENSION_A, EXTENSION_B, EXTENSION_C, EXTENSION_D,
                EXTENSION_E, EXTENSION_F, EXTENSION_G, EXTENSION_H, EXTENSION_I, EXTENSION_J, COMPANY_NAME,
                ACCOUNT_NAME, TAX_TYPE_NAME};
        return super.selectListByKeywordsIgnoreAuthority(k30mExpTypeService, "selectView.sql", criteria, order,
                keywordsCriteria, likeTarget);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public void toEnabled(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria)
            throws KaidenHaventAuthorityToCompanyException, KaidenOptimisticLockException {
        super.toEnabled(k30mExpTypeService, criteria, authCriteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public void toEnabledIgnoreAuthCompany(ExpTypeManagerDto criteria) throws KaidenOptimisticLockException {
        super.toEnabledIgnoreAuthCompany(k30mExpTypeService, criteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public void toDisabled(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria)
            throws KaidenHaventAuthorityToCompanyException, KaidenOptimisticLockException {
        super.toDisabled(k30mExpTypeService, criteria, authCriteria);
        
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public void toDisabledIgnoreAuthCompany(ExpTypeManagerDto criteria) throws KaidenOptimisticLockException {
        super.toDisabledIgnoreAuthCompany(k30mExpTypeService, criteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public int entry(List<ExpTypeManagerDto> dataList, AuthorityCriteriaDto authCriteria)
            throws KaidenHaventAuthorityToCompanyException, KaidenDuplicationEntryException {
        return super.entry(k30mExpTypeService, dataList, authCriteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public int entryIgnoreAuthCompany(List<ExpTypeManagerDto> dataList) throws KaidenDuplicationEntryException {
        return super.entryIgnoreAuthCompany(k30mExpTypeService, dataList);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public int remove(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria)
            throws KaidenHaventAuthorityToCompanyException {
        return super.remove(k30mExpTypeService, criteria, authCriteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public int removeIgnoreAuthCompany(ExpTypeManagerDto criteria) {
        return super.removeIgnoreAuthCompany(k30mExpTypeService, criteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public int renew(List<ExpTypeManagerDto> dataList, AuthorityCriteriaDto authCriteria)
            throws KaidenHaventAuthorityToCompanyException, KaidenOptimisticLockException {
        return super.renew(k30mExpTypeService, dataList, authCriteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public int renewIgnoreAuthCompany(List<ExpTypeManagerDto> dataList) throws KaidenOptimisticLockException {
        return super.renewIgnoreAuthCompany(k30mExpTypeService, dataList);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public List<ExpTypeManagerDto> selectTerms(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria) {
        return super.selectTerms(k30mExpTypeService, criteria, authCriteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public List<ExpTypeManagerDto> selectTermsIgnoreAuthCompany(ExpTypeManagerDto criteria) {
        return super.selectTermsIgnoreAuthCompany(k30mExpTypeService, criteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public List<ExpTypeManagerDto> selectListIncluedsSearchDate(ExpTypeManagerDto criteria,
            AuthorityCriteriaDto authCriteria, List<OrderDto> order) {
        return super.selectListIncluedsSearchDate(k30mExpTypeService, criteria, authCriteria, order);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public List<ExpTypeManagerDto> selectListIncluedsSearchDateIgnoreAuthCompany(ExpTypeManagerDto criteria,
            List<OrderDto> order) {
        return super.selectListIncluedsSearchDateIgnoreAuthCompany(k30mExpTypeService, criteria, order);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public void divideTerm(ExpTypeManagerDto criteria, Date divideDate, AuthorityCriteriaDto authCriteria)
            throws KaidenHaventAuthorityToCompanyException, KaidenOptimisticLockException, KaidenValidateException {
        super.divideTerm(k30mExpTypeService, criteria, divideDate, authCriteria);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public void divideTerm(ExpTypeManagerDto criteria, Date divideDate, AuthorityCriteriaDto authCriteria,
            String deleteFlag2nd) throws KaidenHaventAuthorityToCompanyException, KaidenOptimisticLockException,
            KaidenValidateException {
        String termCd2nd = super.divideTerm(k30mExpTypeService, criteria, divideDate, authCriteria);
        if (StringUtil.isNotEmpty(deleteFlag2nd)) {
            ExpTypeManagerDto criteria2nd = Beans.createAndCopy(ExpTypeManagerDto.class, criteria).execute();
            criteria2nd.termCd = termCd2nd;
            if (GenericFlag.isOn(deleteFlag2nd)) {
                this.toDisabled(criteria2nd, authCriteria);
            } else if (GenericFlag.isOff(deleteFlag2nd)) {
                this.toEnabled(criteria2nd, authCriteria);
            } else {
                throw KaidenIllegalParametersException.makeInstance();
            }
        }
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public void divideTermIgnoreAuthCompany(ExpTypeManagerDto criteria, Date divideDate)
            throws KaidenOptimisticLockException, KaidenValidateException {
        super.divideTermIgnoreAuthCompany(k30mExpTypeService, criteria, divideDate);
        
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public void divideTermIgnoreAuthCompany(ExpTypeManagerDto criteria, Date divideDate, String deleteFlag2nd)
            throws KaidenOptimisticLockException, KaidenValidateException {
        String termCd2nd = super.divideTermIgnoreAuthCompany(k30mExpTypeService, criteria, divideDate);
        if (StringUtil.isNotEmpty(deleteFlag2nd)) {
            ExpTypeManagerDto criteria2nd = Beans.createAndCopy(ExpTypeManagerDto.class, criteria).execute();
            criteria2nd.termCd = termCd2nd;
            if (GenericFlag.isOn(deleteFlag2nd)) {
                this.toDisabledIgnoreAuthCompany(criteria2nd);
            } else if (GenericFlag.isOff(deleteFlag2nd)) {
                this.toEnabledIgnoreAuthCompany(criteria2nd);
            } else {
                throw KaidenIllegalParametersException.makeInstance();
            }
        }
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public void moveTerm(ExpTypeManagerDto criteria, Date newStartDate, Date newEndDate,
            AuthorityCriteriaDto authCriteria) throws KaidenHaventAuthorityToCompanyException,
            KaidenOptimisticLockException, KaidenValidateException {
        super.moveTerm(k30mExpTypeService, criteria, newStartDate, newEndDate, authCriteria);
        
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public void moveTermIgnoreAuthCompany(ExpTypeManagerDto criteria, Date newStartDate, Date newEndDate)
            throws KaidenOptimisticLockException, KaidenValidateException {
        super.moveTermIgnoreAuthCompany(k30mExpTypeService, criteria, newStartDate, newEndDate);
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public Class<? extends KaidenDto> getDtoClass() {
        return super.dtoClass;
    }
    
    /**
     * 重複チェック確認フィールドを返却.
     * <p>
     * 新規登録時、登録済みデータと引数の登録データの重複チェックを行うフィールドを返します。
     * </p>
     * 
     * @return 重複チェック確認フィールドリスト
     */
    @Override
    protected List<String> getDuplicationCheckField() {
        return Arrays.asList(new String[] {COMPANY_CD, EXP_TYPE_CD});
    }
    
    /**
     * {@inheritDoc}
     * <p>
     * {@link #getValidateDefsDtoList4Entry()}で取得した定義を基にバリデートを実行します。
     * </p>
     */
    @Override
    public List<KaidenValidateResult> validate4Entry(List<?> dtoList, Map<String, String> surfaces) {
        if (dtoList == null) {
            throw KaidenIllegalParametersException.makeInstance();
        }
        return makeValidateExecuter(dtoList, surfaces, getValidateDefsDtoList4Entry()).executeAll(
                ErrorMode.ERROR_CONTINUE);
    }
    
    /**
     * {@inheritDoc}
     * <p>
     * {@link #getValidateDefsDtoList4Renew()}で取得した定義を基にバリデートを実行します。
     * </p>
     */
    @Override
    public List<KaidenValidateResult> validate4Renew(List<?> dtoList, Map<String, String> surfaces) {
        if (dtoList == null) {
            throw KaidenIllegalParametersException.makeInstance();
        }
        return makeValidateExecuter(dtoList, surfaces, getValidateDefsDtoList4Renew()).executeAll(
                ErrorMode.ERROR_CONTINUE);
    }
    
    /**
     * {@inheritDoc}
     * <p>
     * 以下のバリデート定義のリストを返却します。
     * </p>
     * <table border="1">
     * <tr>
     * <th>項目名</th>
     * <th>検証内容</th>
     * </tr>
     * <tr>
     * <td>会社コード</td>
     * <td>必須、マスタ存在確認</td>
     * </tr>
     * <tr>
     * <td>経費区分コード</td>
     * <td>必須、100桁、皆伝コード</td>
     * </tr>
     * <tr>
     * <td>ロケールID</td>
     * <td>必須、ロケール妥当性</td>
     * </tr>
     * <tr>
     * <td>経費区分名称</td>
     * <td>必須、250桁</td>
     * </tr>
     * <tr>
     * <td>経費区分カテゴリ</td>
     * <td>250桁</td>
     * </tr>
     * <tr>
     * <td>開始日</td>
     * <td>必須、日付(システム期間内)</td>
     * </tr>
     * <tr>
     * <td>終了日</td>
     * <td>必須、日付(システム期間内)、開始日・終了日大小チェック</td>
     * </tr>
     * <tr>
     * <td>勘定科目コード</td>
     * <td>必須、100桁、皆伝コード、マスタ存在確認</td>
     * </tr>
     * <tr>
     * <td>税区分コード</td>
     * <td>必須、100桁、皆伝コード、マスタ存在確認</td>
     * </tr>
     * <tr>
     * <td>ソートキー</td>
     * <td>必須、数値</td>
     * </tr>
     * <tr>
     * <td>削除フラグ</td>
     * <td>フラグ妥当性</td>
     * </tr>
     * </table>
     */
    @Override
    public List<ValidateDefsDto> getValidateDefsDtoList4Entry() {
        List<ValidateDefsDto> result = new ArrayList<ValidateDefsDto>();
        // 会社コード
        result.add(new ValidateDefsDto(COMPANY_CD, VALID_REQUIRED));
        result.add(new ValidateDefsDto(COMPANY_CD, VALID_COMPANY_EXISTS, COMPANY_CD, "", "true"));
        // 経費区分コード
        result.add(new ValidateDefsDto(EXP_TYPE_CD, VALID_REQUIRED));
        result.add(new ValidateDefsDto(EXP_TYPE_CD, VALID_MAX_LENGTH, String.valueOf(EXP_TYPE_CD_LEN)));
        result.add(new ValidateDefsDto(EXP_TYPE_CD, VALID_KAIDEN_ID));
        // ロケールID
        result.add(new ValidateDefsDto(LOCALE_ID, VALID_REQUIRED));
        result.add(new ValidateDefsDto(LOCALE_ID, VALID_LOCALE));
        // 経費区分名称
        result.add(new ValidateDefsDto(EXP_TYPE_NAME, VALID_REQUIRED));
        result.add(new ValidateDefsDto(EXP_TYPE_NAME, VALID_MAX_LENGTH, String.valueOf(EXP_TYPE_NAME_LEN)));
        // 経費区分カテゴリ
        result.add(new ValidateDefsDto(EXP_TYPE_CATEGORY, VALID_MAX_LENGTH, String.valueOf(EXP_TYPE_CATEGORY_LEN)));
        // 開始日
        result.add(new ValidateDefsDto(START_DATE, VALID_REQUIRED));
        result.add(new ValidateDefsDto(START_DATE, VALID_DATE));
        // 終了日
        result.add(new ValidateDefsDto(END_DATE, VALID_REQUIRED));
        result.add(new ValidateDefsDto(END_DATE, VALID_DATE));
        result.add(new ValidateDefsDto(END_DATE, VALID_DATE_MIN, START_DATE));
        // 勘定科目コード
        result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_REQUIRED));
        result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_MAX_LENGTH, String.valueOf(ACCOUNT_CD_LEN)));
        result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_KAIDEN_ID));
        result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_ACCOUNT_EXISTS, ACCOUNT_CD, COMPANY_CD, "", "true"));
        // 税区分コード
        result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_REQUIRED));
        result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_MAX_LENGTH, String.valueOf(TAX_TYPE_CD_LEN)));
        result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_KAIDEN_ID));
        result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_TAX_TYPE_EXISTS, TAX_TYPE_CD, COMPANY_CD, "", "true"));
        // ソートキー
        result.add(new ValidateDefsDto(SORT_KEY, VALID_REQUIRED));
        result.add(new ValidateDefsDto(SORT_KEY, VALID_INTEGER, String.valueOf(SORT_KEY_LEN)));
        // 削除フラグ
        result.add(new ValidateDefsDto(DELETE_FLAG, VALID_FLAG));
        
        return result;
    }
    
    /**
     * {@inheritDoc}
     * <p>
     * 以下のバリデート定義のリストを返却します。
     * </p>
     * <table border="1">
     * <tr>
     * <th>項目名</th>
     * <th>検証内容</th>
     * </tr>
     * <tr>
     * <td>会社コード</td>
     * <td>必須、マスタ存在確認</td>
     * </tr>
     * <tr>
     * <td>経費区分コード</td>
     * <td>必須、100桁、皆伝コード</td>
     * </tr>
     * <tr>
     * <td>期間コード</td>
     * <td>必須、50桁、皆伝コード</td>
     * </tr>
     * <tr>
     * <td>ロケールID</td>
     * <td>必須、ロケール妥当性</td>
     * </tr>
     * <tr>
     * <td>経費区分名称</td>
     * <td>必須、250桁</td>
     * </tr>
     * <tr>
     * <td>経費区分カテゴリ</td>
     * <td>250桁</td>
     * </tr>
     * <tr>
     * <td>開始日</td>
     * <td>必須、日付(システム期間内)</td>
     * </tr>
     * <tr>
     * <td>終了日</td>
     * <td>必須、日付(システム期間内)、開始日・終了日大小チェック</td>
     * </tr>
     * <tr>
     * <td>勘定科目コード</td>
     * <td>必須、100桁、皆伝コード、マスタ存在確認</td>
     * </tr>
     * <tr>
     * <td>税区分コード</td>
     * <td>必須、100桁、皆伝コード、マスタ存在確認</td>
     * </tr>
     * <tr>
     * <td>ソートキー</td>
     * <td>必須、数値</td>
     * </tr>
     * </table>
     */
    @Override
    public List<ValidateDefsDto> getValidateDefsDtoList4Renew() {
        List<ValidateDefsDto> result = new ArrayList<ValidateDefsDto>();
        // 会社コード
        result.add(new ValidateDefsDto(COMPANY_CD, VALID_REQUIRED));
        result.add(new ValidateDefsDto(COMPANY_CD, VALID_COMPANY_EXISTS, COMPANY_CD, "", "true"));
        // 経費区分コード
        result.add(new ValidateDefsDto(EXP_TYPE_CD, VALID_REQUIRED));
        result.add(new ValidateDefsDto(EXP_TYPE_CD, VALID_MAX_LENGTH, String.valueOf(EXP_TYPE_CD_LEN)));
        result.add(new ValidateDefsDto(EXP_TYPE_CD, VALID_KAIDEN_ID));
        // 期間コード
        result.add(new ValidateDefsDto(TERM_CD, VALID_REQUIRED));
        result.add(new ValidateDefsDto(TERM_CD, VALID_MAX_LENGTH, String.valueOf(TERM_CD_LEN)));
        result.add(new ValidateDefsDto(TERM_CD, VALID_KAIDEN_ID));
        // ロケールID
        result.add(new ValidateDefsDto(LOCALE_ID, VALID_REQUIRED));
        result.add(new ValidateDefsDto(LOCALE_ID, VALID_LOCALE));
        // 経費区分名称
        result.add(new ValidateDefsDto(EXP_TYPE_NAME, VALID_REQUIRED));
        result.add(new ValidateDefsDto(EXP_TYPE_NAME, VALID_MAX_LENGTH, String.valueOf(EXP_TYPE_NAME_LEN)));
        result.add(new ValidateDefsDto(EXP_TYPE_CATEGORY, VALID_MAX_LENGTH, String.valueOf(EXP_TYPE_CATEGORY_LEN)));
        // 開始日
        result.add(new ValidateDefsDto(START_DATE, VALID_REQUIRED));
        result.add(new ValidateDefsDto(START_DATE, VALID_DATE));
        // 終了日
        result.add(new ValidateDefsDto(END_DATE, VALID_REQUIRED));
        result.add(new ValidateDefsDto(END_DATE, VALID_DATE));
        result.add(new ValidateDefsDto(END_DATE, VALID_DATE_MIN, START_DATE));
        // 勘定科目コード
        result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_REQUIRED));
        result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_MAX_LENGTH, String.valueOf(ACCOUNT_CD_LEN)));
        result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_KAIDEN_ID));
        result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_ACCOUNT_EXISTS, ACCOUNT_CD, COMPANY_CD, "", "true"));
        // 税区分コード
        result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_REQUIRED));
        result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_MAX_LENGTH, String.valueOf(TAX_TYPE_CD_LEN)));
        result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_KAIDEN_ID));
        result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_TAX_TYPE_EXISTS, TAX_TYPE_CD, COMPANY_CD, "", "true"));
        // ソートキー
        result.add(new ValidateDefsDto(SORT_KEY, VALID_REQUIRED));
        result.add(new ValidateDefsDto(SORT_KEY, VALID_INTEGER, String.valueOf(SORT_KEY_LEN)));
        
        return result;
    }
    
    /** {@inheritDoc} */
    @Override
    public Class<ExpTypeManagerDto> getMainManagerDtoClass() {
        return ExpTypeManagerDto.class;
    }
    
    @Override
    public List<ExpTypeManagerDto> selectListIgnoreAuthCompanyWithLock(ExpTypeManagerDto criteria, List<OrderDto> order) {
        Map<String, Object> criteriaMap = k30mExpTypeService.getCriteria(criteria);
        return complementEndDateForDisp(CollectionUtil.createListAndCopy(ExpTypeManagerDto.class,
                k30mExpTypeService.genericSelectList4Update(criteriaMap, order)));
    }
    
    /** {@inheritDoc} */
    @Override
    public List<String> getPkFileds() {
        return k30mExpTypeService.getPkFiled();
    }
    
    /**
     * {@inheritDoc}
     */
    @Override
    public void executeIterateLogic(ExpTypeManagerDto criteria, List<OrderDto> order,
            IterateBusinessLogicIF<ExpTypeManagerDto> logic) throws KaidenSystemException, KaidenApplicationException {
        super.iterateLogic(k30mExpTypeService, criteria, order, logic);
    }
    
    @Override
    public Map<String, Object> selectList4MstSearch(KaidenDto criteria, List<OrderDto> order,
            KeywordsCriteriaDto keywordsCriteria, SqlResultFilterIF[] filter) {
        String[] likeTarget = {EXP_TYPE_NAME, EXP_TYPE_CATEGORY, EXTENSION_A, EXTENSION_B, EXTENSION_C, EXTENSION_D,
                EXTENSION_E, EXTENSION_F, EXTENSION_G, EXTENSION_H, EXTENSION_I, EXTENSION_J, COMPANY_NAME,
                ACCOUNT_NAME, TAX_TYPE_NAME};
        Map<String, Object> resultMap = super.selectListByKeywordsFilter(k30mExpTypeService, "selectView.sql",
                criteria, order, keywordsCriteria, likeTarget, filter);
        @SuppressWarnings("unchecked")
        List<ExpTypeManagerDto> newList = (List<ExpTypeManagerDto>) resultMap.get("resultList");
        resultMap.put("resultList", newList);
        
        return resultMap;
    }
}

5.2.2.2.6. ManagerDto

  • Path
    src/main/java/jp/co/slcs/kaiden2/product_workflow/foundation/manager/exptype/ExpTypeManagerDto.java
package jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype;

import java.math.BigDecimal;
import java.sql.Timestamp;
import jp.co.slcs.kaiden2.base.foundation.model.dto.KaidenMasterManagerDto;
import jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.impl.ExpTypeManagerImpl;

/**
 * 経費区分マスタDTO.
 * <p>
 * マネージャクラス({@link ExpTypeManagerImpl})へ渡すパラメータ、及びマネージャからの結果返却で当クラスを使用します。
 * </p>
 * 
 * @author Sumitomo Life Information Systems Co.,Ltd.
 */
public class ExpTypeManagerDto extends KaidenMasterManagerDto {
    
    /** 会社コード. */
    public String companyCd;
    /** 経費区分コード. */
    public String expTypeCd;
    /** 期間コード. */
    public String termCd;
    /** ロケールid. */
    public String localeId;
    /** 経費区分名称. */
    public String expTypeName;
    /** 経費区分カテゴリ. */
    public String expTypeCategory;
    /** 開始日. */
    public Timestamp startDate;
    /** 終了日. */
    public Timestamp endDate;
    /** 勘定科目コード. */
    public String accountCd;
    /** 税区分コード. */
    public String taxTypeCd;
    /** ソートキー. */
    public Long sortKey;
    /** 削除フラグ. */
    public String deleteFlag;
    /** 予備項目a. */
    public String extensionA;
    /** 予備項目b. */
    public String extensionB;
    /** 予備項目c. */
    public String extensionC;
    /** 予備項目d. */
    public String extensionD;
    /** 予備項目e. */
    public String extensionE;
    /** 予備項目f. */
    public String extensionF;
    /** 予備項目g. */
    public String extensionG;
    /** 予備項目h. */
    public String extensionH;
    /** 予備項目i. */
    public String extensionI;
    /** 予備項目j. */
    public String extensionJ;
    /** 登録日時. */
    public Timestamp entryTs;
    /** 登録者コード. */
    public String entryUserCd;
    /** 更新カウンタ. */
    public Long renewCnt;
    /** 更新日時. */
    public Timestamp renewTs;
    /** 更新者コード. */
    public String renewUserCd;
    
    /** 会社名称(他マスタ名称). */
    public String companyName;
    /** 勘定科目名称(他マスタ名称). */
    public String accountName;
    /** 税区分名称(他マスタ名称). */
    public String taxTypeName;
    /** 税率(他マスタ). */
    public BigDecimal taxRate;
    
}
  • Path
    src/main/java/jp/co/slcs/kaiden2/product_workflow/foundation/manager/exptype/ExpTypeManagerDtoFieldName.java
package jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype;

import jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames;
import jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.impl.ExpTypeManagerImpl;

/**
 * 経費区分マスタDTO フィールド名定義クラス.
 * <p>
 * マネージャクラス({@link ExpTypeManagerImpl})へ渡すパラメータ、及びマネージャからの結果返却で当クラスを使用します。
 * </p>
 * 
 * @author Sumitomo Life Information Systems Co.,Ltd.
 */
public final class ExpTypeManagerDtoFieldName extends EntityCommonFieldNames {
    
    /**
     * コンストラクタ.
     */
    private ExpTypeManagerDtoFieldName() {
    }
    
    /** 会社コード. */
    public static final String COMPANY_CD = EntityCommonFieldNames.COMPANY_CD;
    /** 経費区分コード. */
    public static final String EXP_TYPE_CD = "expTypeCd";
    /** 期間コード. */
    public static final String TERM_CD = EntityCommonFieldNames.TERM_CD;
    /** ロケールid. */
    public static final String LOCALE_ID = EntityCommonFieldNames.LOCALE_ID;
    /** 経費区分名称. */
    public static final String EXP_TYPE_NAME = "expTypeName";
    /** 経費区分カテゴリ. */
    public static final String EXP_TYPE_CATEGORY = "expTypeCategory";
    /** 開始日. */
    public static final String START_DATE = EntityCommonFieldNames.START_DATE;
    /** 終了日. */
    public static final String END_DATE = EntityCommonFieldNames.END_DATE;
    /** 勘定科目コード. */
    public static final String ACCOUNT_CD = "accountCd";
    /** 税区分コード. */
    public static final String TAX_TYPE_CD = "taxTypeCd";
    /** ソートキー. */
    public static final String SORT_KEY = EntityCommonFieldNames.SORT_KEY;
    /** 削除フラグ. */
    public static final String DELETE_FLAG = EntityCommonFieldNames.DELETE_FLAG;
    
    /** 会社名称(他マスタ名称). */
    public static final String COMPANY_NAME = "companyName";
    /** 勘定科目名称(他マスタ名称). */
    public static final String ACCOUNT_NAME = "accountName";
    /** 税区分名称(他マスタ名称). */
    public static final String TAX_TYPE_NAME = "taxTypeName";
    /** 税率(他マスタ). */
    public static final String TAX_RATE = "taxRate";
}

5.2.2.2.7. Taglib

  • Path
    src/main/java/jp/co/slcs/kaiden2/product_workflow/foundation/taglib/MstSearchExpType.java
package jp.co.slcs.kaiden2.product_workflow.foundation.taglib;

import jp.co.slcs.kaiden2.base.foundation.taglib.AbstractMstSearch;
import jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName;

/**
 * 経費区分マスタ検索.
 * 
 * @author Sumitomo Life Information Systems Co.,Ltd.
 */
public class MstSearchExpType extends AbstractMstSearch {
    
    /** シリアルバージョンUID. */
    private static final long serialVersionUID = 1L;
    
    /**
     * {@inheritDoc}
     */
    @Override
    protected String getSearchUrl() {
        return "expTypeSearch";
    }
    
    /**
     * 検索条件:経費区分コードを設定.
     * 
     * @param searchCriteriaExpTypeCd 検索条件:経費区分コード
     */
    public void setSearchCriteriaExpTypeCd(String searchCriteriaExpTypeCd) {
        super.addSearchReCriteria(ExpTypeManagerDtoFieldName.EXP_TYPE_CD, searchCriteriaExpTypeCd);
    }
}

5.2.2.3. Java(S2JDBC)

5.2.2.3.1. Entity

  • Path
    src/main/generated/jp/co/slcs/kaiden2/product_workflow/foundation/model/entity/K30mExpType.java
package jp.co.slcs.kaiden2.product_workflow.foundation.model.entity;

import java.io.Serializable;
import java.sql.Timestamp;
import javax.annotation.Generated;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import jp.co.slcs.kaiden2.base.foundation.model.entity.GenerateEntity;

/**
 * 経費区分マスタ.
 * 
 * @author Sumitomo Life Information Systems Co.,Ltd.
 */
@Entity
@Table(name = "k30m_exp_type")
@Generated(value = {"S2JDBC-Gen 2.4.46", "org.seasar.extension.jdbc.gen.internal.model.EntityModelFactoryImpl" })
public final class K30mExpType extends GenerateEntity implements Serializable {
    
    /** シリアルバージョンUID. */
    private static final long serialVersionUID = 1L;

    /** 会社コード. */
    @Id
    @Column(name = "company_cd", columnDefinition = "varchar2(100)", nullable = false, unique = false)
    public String companyCd;

    /** 経費区分コード. */
    @Id
    @Column(name = "exp_type_cd", columnDefinition = "varchar2(100)", nullable = false, unique = false)
    public String expTypeCd;

    /** 期間コード. */
    @Id
    @Column(name = "term_cd", columnDefinition = "varchar2(50)", nullable = false, unique = false)
    public String termCd;

    /** ロケールid. */
    @Id
    @Column(name = "locale_id", columnDefinition = "varchar2(50)", nullable = false, unique = false)
    public String localeId;

    /** 経費区分名称. */
    @Column(name = "exp_type_name", columnDefinition = "varchar2(1000)", nullable = false, unique = false)
    public String expTypeName;

    /** 経費区分カテゴリ. */
    @Column(name = "exp_type_category", columnDefinition = "varchar2(1000)", nullable = true, unique = false)
    public String expTypeCategory;

    /** 開始日. */
    @Column(name = "start_date", columnDefinition = "timestamp(6)", nullable = false, unique = false)
    public Timestamp startDate;

    /** 終了日. */
    @Column(name = "end_date", columnDefinition = "timestamp(6)", nullable = false, unique = false)
    public Timestamp endDate;

    /** 勘定科目コード. */
    @Column(name = "account_cd", columnDefinition = "varchar2(100)", nullable = false, unique = false)
    public String accountCd;

    /** 税区分コード. */
    @Column(name = "tax_type_cd", columnDefinition = "varchar2(100)", nullable = false, unique = false)
    public String taxTypeCd;

    /** ソートキー. */
    @Column(name = "sort_key", columnDefinition = "number(15,0)", nullable = false, unique = false)
    public Long sortKey;

    /** 削除フラグ. */
    @Column(name = "delete_flag", columnDefinition = "varchar2(1)", nullable = false, unique = false)
    public String deleteFlag;

    /** 予備項目a. */
    @Column(name = "extension_a", columnDefinition = "varchar2(1000)", nullable = true, unique = false)
    public String extensionA;

    /** 予備項目b. */
    @Column(name = "extension_b", columnDefinition = "varchar2(1000)", nullable = true, unique = false)
    public String extensionB;

    /** 予備項目c. */
    @Column(name = "extension_c", columnDefinition = "varchar2(1000)", nullable = true, unique = false)
    public String extensionC;

    /** 予備項目d. */
    @Column(name = "extension_d", columnDefinition = "varchar2(1000)", nullable = true, unique = false)
    public String extensionD;

    /** 予備項目e. */
    @Column(name = "extension_e", columnDefinition = "varchar2(1000)", nullable = true, unique = false)
    public String extensionE;

    /** 予備項目f. */
    @Column(name = "extension_f", columnDefinition = "varchar2(1000)", nullable = true, unique = false)
    public String extensionF;

    /** 予備項目g. */
    @Column(name = "extension_g", columnDefinition = "varchar2(1000)", nullable = true, unique = false)
    public String extensionG;

    /** 予備項目h. */
    @Column(name = "extension_h", columnDefinition = "varchar2(1000)", nullable = true, unique = false)
    public String extensionH;

    /** 予備項目i. */
    @Column(name = "extension_i", columnDefinition = "varchar2(1000)", nullable = true, unique = false)
    public String extensionI;

    /** 予備項目j. */
    @Column(name = "extension_j", columnDefinition = "varchar2(1000)", nullable = true, unique = false)
    public String extensionJ;
}

5.2.2.3.2. Names

  • Path
    src/main/generated/jp/co/slcs/kaiden2/product_workflow/foundation/model/entity/K30mExpTypeNames.java
package jp.co.slcs.kaiden2.product_workflow.foundation.model.entity;

import java.sql.Timestamp;
import javax.annotation.Generated;
import org.seasar.extension.jdbc.name.PropertyName;

/**
 * {@link K30mExpType}の名称クラス.
 * 
 * @author Sumitomo Life Information Systems Co.,Ltd.
 */
@Generated(value = {"S2JDBC-Gen 2.4.46", "org.seasar.extension.jdbc.gen.internal.model.NamesModelFactoryImpl" })
public final class K30mExpTypeNames {
    
    /**
     * デフォルトコンストラクタ.
     */
     private K30mExpTypeNames() {
         super();
     }
    
    /**
     * companyCdのプロパティ名を返却.
     * 
     * @return companyCdのプロパティ名
     */
    public static PropertyName<String> companyCd() {
        return new PropertyName<String>("companyCd");
    }
    
    /**
     * expTypeCdのプロパティ名を返却.
     * 
     * @return expTypeCdのプロパティ名
     */
    public static PropertyName<String> expTypeCd() {
        return new PropertyName<String>("expTypeCd");
    }
    
    /**
     * termCdのプロパティ名を返却.
     * 
     * @return termCdのプロパティ名
     */
    public static PropertyName<String> termCd() {
        return new PropertyName<String>("termCd");
    }
    
    /**
     * localeIdのプロパティ名を返却.
     * 
     * @return localeIdのプロパティ名
     */
    public static PropertyName<String> localeId() {
        return new PropertyName<String>("localeId");
    }
    
    /**
     * expTypeNameのプロパティ名を返却.
     * 
     * @return expTypeNameのプロパティ名
     */
    public static PropertyName<String> expTypeName() {
        return new PropertyName<String>("expTypeName");
    }
    
    /**
     * expTypeCategoryのプロパティ名を返却.
     * 
     * @return expTypeCategoryのプロパティ名
     */
    public static PropertyName<String> expTypeCategory() {
        return new PropertyName<String>("expTypeCategory");
    }
    
    /**
     * startDateのプロパティ名を返却.
     * 
     * @return startDateのプロパティ名
     */
    public static PropertyName<Timestamp> startDate() {
        return new PropertyName<Timestamp>("startDate");
    }
    
    /**
     * endDateのプロパティ名を返却.
     * 
     * @return endDateのプロパティ名
     */
    public static PropertyName<Timestamp> endDate() {
        return new PropertyName<Timestamp>("endDate");
    }
    
    /**
     * accountCdのプロパティ名を返却.
     * 
     * @return accountCdのプロパティ名
     */
    public static PropertyName<String> accountCd() {
        return new PropertyName<String>("accountCd");
    }
    
    /**
     * taxTypeCdのプロパティ名を返却.
     * 
     * @return taxTypeCdのプロパティ名
     */
    public static PropertyName<String> taxTypeCd() {
        return new PropertyName<String>("taxTypeCd");
    }
    
    /**
     * sortKeyのプロパティ名を返却.
     * 
     * @return sortKeyのプロパティ名
     */
    public static PropertyName<Long> sortKey() {
        return new PropertyName<Long>("sortKey");
    }
    
    /**
     * deleteFlagのプロパティ名を返却.
     * 
     * @return deleteFlagのプロパティ名
     */
    public static PropertyName<String> deleteFlag() {
        return new PropertyName<String>("deleteFlag");
    }
    
    /**
     * extensionAのプロパティ名を返却.
     * 
     * @return extensionAのプロパティ名
     */
    public static PropertyName<String> extensionA() {
        return new PropertyName<String>("extensionA");
    }
    
    /**
     * extensionBのプロパティ名を返却.
     * 
     * @return extensionBのプロパティ名
     */
    public static PropertyName<String> extensionB() {
        return new PropertyName<String>("extensionB");
    }
    
    /**
     * extensionCのプロパティ名を返却.
     * 
     * @return extensionCのプロパティ名
     */
    public static PropertyName<String> extensionC() {
        return new PropertyName<String>("extensionC");
    }
    
    /**
     * extensionDのプロパティ名を返却.
     * 
     * @return extensionDのプロパティ名
     */
    public static PropertyName<String> extensionD() {
        return new PropertyName<String>("extensionD");
    }
    
    /**
     * extensionEのプロパティ名を返却.
     * 
     * @return extensionEのプロパティ名
     */
    public static PropertyName<String> extensionE() {
        return new PropertyName<String>("extensionE");
    }
    
    /**
     * extensionFのプロパティ名を返却.
     * 
     * @return extensionFのプロパティ名
     */
    public static PropertyName<String> extensionF() {
        return new PropertyName<String>("extensionF");
    }
    
    /**
     * extensionGのプロパティ名を返却.
     * 
     * @return extensionGのプロパティ名
     */
    public static PropertyName<String> extensionG() {
        return new PropertyName<String>("extensionG");
    }
    
    /**
     * extensionHのプロパティ名を返却.
     * 
     * @return extensionHのプロパティ名
     */
    public static PropertyName<String> extensionH() {
        return new PropertyName<String>("extensionH");
    }
    
    /**
     * extensionIのプロパティ名を返却.
     * 
     * @return extensionIのプロパティ名
     */
    public static PropertyName<String> extensionI() {
        return new PropertyName<String>("extensionI");
    }
    
    /**
     * extensionJのプロパティ名を返却.
     * 
     * @return extensionJのプロパティ名
     */
    public static PropertyName<String> extensionJ() {
        return new PropertyName<String>("extensionJ");
    }
    
    /**
     * entryTsのプロパティ名を返却.
     * 
     * @return entryTsのプロパティ名
     */
    public static PropertyName<Timestamp> entryTs() {
        return new PropertyName<Timestamp>("entryTs");
    }
    
    /**
     * entryUserCdのプロパティ名を返却.
     * 
     * @return entryUserCdのプロパティ名
     */
    public static PropertyName<String> entryUserCd() {
        return new PropertyName<String>("entryUserCd");
    }
    
    /**
     * renewCntのプロパティ名を返却.
     * 
     * @return renewCntのプロパティ名
     */
    public static PropertyName<Long> renewCnt() {
        return new PropertyName<Long>("renewCnt");
    }
    
    /**
     * renewTsのプロパティ名を返却.
     * 
     * @return renewTsのプロパティ名
     */
    public static PropertyName<Timestamp> renewTs() {
        return new PropertyName<Timestamp>("renewTs");
    }
    
    /**
     * renewUserCdのプロパティ名を返却.
     * 
     * @return renewUserCdのプロパティ名
     */
    public static PropertyName<String> renewUserCd() {
        return new PropertyName<String>("renewUserCd");
    }
    
    /**
     * @author S2JDBC-Gen
     */
    public static class _K30mExpTypeNames extends PropertyName<K30mExpType> {
        
        /**
         * インスタンスを構築.
         */
        public _K30mExpTypeNames() {
        }
        
        /**
         * インスタンスを構築.
         * 
         * @param name 名前
         */
        public _K30mExpTypeNames(final String name) {
            super(name);
        }
        
        /**
         * インスタンスを構築.
         * 
         * @param parent 親
         * @param name 名前
         */
        public _K30mExpTypeNames(final PropertyName<?> parent, final String name) {
            super(parent, name);
        }
        
        /**
         * companyCdのプロパティ名を返却.
         *
         * @return companyCdのプロパティ名
         */
        public PropertyName<String> companyCd() {
            return new PropertyName<String>(this, "companyCd");
        }
        
        /**
         * expTypeCdのプロパティ名を返却.
         *
         * @return expTypeCdのプロパティ名
         */
        public PropertyName<String> expTypeCd() {
            return new PropertyName<String>(this, "expTypeCd");
        }
        
        /**
         * termCdのプロパティ名を返却.
         *
         * @return termCdのプロパティ名
         */
        public PropertyName<String> termCd() {
            return new PropertyName<String>(this, "termCd");
        }
        
        /**
         * localeIdのプロパティ名を返却.
         *
         * @return localeIdのプロパティ名
         */
        public PropertyName<String> localeId() {
            return new PropertyName<String>(this, "localeId");
        }
        
        /**
         * expTypeNameのプロパティ名を返却.
         *
         * @return expTypeNameのプロパティ名
         */
        public PropertyName<String> expTypeName() {
            return new PropertyName<String>(this, "expTypeName");
        }
        
        /**
         * expTypeCategoryのプロパティ名を返却.
         *
         * @return expTypeCategoryのプロパティ名
         */
        public PropertyName<String> expTypeCategory() {
            return new PropertyName<String>(this, "expTypeCategory");
        }
        
        /**
         * startDateのプロパティ名を返却.
         *
         * @return startDateのプロパティ名
         */
        public PropertyName<Timestamp> startDate() {
            return new PropertyName<Timestamp>(this, "startDate");
        }
        
        /**
         * endDateのプロパティ名を返却.
         *
         * @return endDateのプロパティ名
         */
        public PropertyName<Timestamp> endDate() {
            return new PropertyName<Timestamp>(this, "endDate");
        }
        
        /**
         * accountCdのプロパティ名を返却.
         *
         * @return accountCdのプロパティ名
         */
        public PropertyName<String> accountCd() {
            return new PropertyName<String>(this, "accountCd");
        }
        
        /**
         * taxTypeCdのプロパティ名を返却.
         *
         * @return taxTypeCdのプロパティ名
         */
        public PropertyName<String> taxTypeCd() {
            return new PropertyName<String>(this, "taxTypeCd");
        }
        
        /**
         * sortKeyのプロパティ名を返却.
         *
         * @return sortKeyのプロパティ名
         */
        public PropertyName<Long> sortKey() {
            return new PropertyName<Long>(this, "sortKey");
        }
        
        /**
         * deleteFlagのプロパティ名を返却.
         *
         * @return deleteFlagのプロパティ名
         */
        public PropertyName<String> deleteFlag() {
            return new PropertyName<String>(this, "deleteFlag");
        }
        
        /**
         * extensionAのプロパティ名を返却.
         *
         * @return extensionAのプロパティ名
         */
        public PropertyName<String> extensionA() {
            return new PropertyName<String>(this, "extensionA");
        }
        
        /**
         * extensionBのプロパティ名を返却.
         *
         * @return extensionBのプロパティ名
         */
        public PropertyName<String> extensionB() {
            return new PropertyName<String>(this, "extensionB");
        }
        
        /**
         * extensionCのプロパティ名を返却.
         *
         * @return extensionCのプロパティ名
         */
        public PropertyName<String> extensionC() {
            return new PropertyName<String>(this, "extensionC");
        }
        
        /**
         * extensionDのプロパティ名を返却.
         *
         * @return extensionDのプロパティ名
         */
        public PropertyName<String> extensionD() {
            return new PropertyName<String>(this, "extensionD");
        }
        
        /**
         * extensionEのプロパティ名を返却.
         *
         * @return extensionEのプロパティ名
         */
        public PropertyName<String> extensionE() {
            return new PropertyName<String>(this, "extensionE");
        }
        
        /**
         * extensionFのプロパティ名を返却.
         *
         * @return extensionFのプロパティ名
         */
        public PropertyName<String> extensionF() {
            return new PropertyName<String>(this, "extensionF");
        }
        
        /**
         * extensionGのプロパティ名を返却.
         *
         * @return extensionGのプロパティ名
         */
        public PropertyName<String> extensionG() {
            return new PropertyName<String>(this, "extensionG");
        }
        
        /**
         * extensionHのプロパティ名を返却.
         *
         * @return extensionHのプロパティ名
         */
        public PropertyName<String> extensionH() {
            return new PropertyName<String>(this, "extensionH");
        }
        
        /**
         * extensionIのプロパティ名を返却.
         *
         * @return extensionIのプロパティ名
         */
        public PropertyName<String> extensionI() {
            return new PropertyName<String>(this, "extensionI");
        }
        
        /**
         * extensionJのプロパティ名を返却.
         *
         * @return extensionJのプロパティ名
         */
        public PropertyName<String> extensionJ() {
            return new PropertyName<String>(this, "extensionJ");
        }
        
        /**
         * entryTsのプロパティ名を返却.
         *
         * @return entryTsのプロパティ名
         */
        public PropertyName<Timestamp> entryTs() {
            return new PropertyName<Timestamp>(this, "entryTs");
        }
        
        /**
         * entryUserCdのプロパティ名を返却.
         *
         * @return entryUserCdのプロパティ名
         */
        public PropertyName<String> entryUserCd() {
            return new PropertyName<String>(this, "entryUserCd");
        }
        
        /**
         * renewCntのプロパティ名を返却.
         *
         * @return renewCntのプロパティ名
         */
        public PropertyName<Long> renewCnt() {
            return new PropertyName<Long>(this, "renewCnt");
        }
        
        /**
         * renewTsのプロパティ名を返却.
         *
         * @return renewTsのプロパティ名
         */
        public PropertyName<Timestamp> renewTs() {
            return new PropertyName<Timestamp>(this, "renewTs");
        }
        
        /**
         * renewUserCdのプロパティ名を返却.
         *
         * @return renewUserCdのプロパティ名
         */
        public PropertyName<String> renewUserCd() {
            return new PropertyName<String>(this, "renewUserCd");
        }
    }
}

5.2.2.3.3. Service

  • Path
    src/main/generated/jp/co/slcs/kaiden2/product_workflow/foundation/model/service/K30mExpTypeService.java
package jp.co.slcs.kaiden2.product_workflow.foundation.model.service;

import javax.annotation.Generated;
import jp.co.slcs.kaiden2.base.foundation.model.service.GenerateService;
import jp.co.slcs.kaiden2.product_workflow.foundation.model.entity.K30mExpType;

/**
 * {@link K30mExpType}のサービスクラス.
 * 
 * @author Sumitomo Life Information Systems Co.,Ltd.
 */
@Generated(value = {"S2JDBC-Gen 2.4.46", "org.seasar.extension.jdbc.gen.internal.model.ServiceModelFactoryImpl" })
public final class K30mExpTypeService extends GenerateService<K30mExpType> {
    //
}

5.2.2.3.4. Condition

  • Path
    src/main/generated/jp/co/slcs/kaiden2/product_workflow/foundation/model/service/K30mExpTypeCondition.java
package jp.co.slcs.kaiden2.product_workflow.foundation.model.service;

import java.sql.Timestamp;
import javax.annotation.Generated;
import org.seasar.extension.jdbc.where.ComplexWhere;
import org.seasar.extension.jdbc.where.condition.AbstractEntityCondition;
import org.seasar.extension.jdbc.where.condition.NotNullableCondition;
import org.seasar.extension.jdbc.where.condition.NotNullableStringCondition;
import org.seasar.extension.jdbc.where.condition.NullableStringCondition;

/**
 * {@link K30mExpType}の条件クラス.
 * 
 * @author Sumitomo Life Information Systems Co.,Ltd.
 */
@Generated(value = {"S2JDBC-Gen 2.4.46", "org.seasar.extension.jdbc.gen.internal.model.ConditionModelFactoryImpl" })
public final class K30mExpTypeCondition extends
        AbstractEntityCondition<K30mExpTypeCondition> {
    
    /**
     * インスタンスを構築.
     */
    public K30mExpTypeCondition() {
    }
    
    /**
     * インスタンスを構築.
     * 
     * @param prefix プレフィックス
     * @param where 検索条件
     */
    public K30mExpTypeCondition(String prefix, ComplexWhere where) {
        super(prefix, where);
    }
    
    /** companyCdの条件. */
    public NotNullableStringCondition<K30mExpTypeCondition> companyCd =
        new NotNullableStringCondition<K30mExpTypeCondition>("companyCd", this);
    
    /** expTypeCdの条件. */
    public NotNullableStringCondition<K30mExpTypeCondition> expTypeCd =
        new NotNullableStringCondition<K30mExpTypeCondition>("expTypeCd", this);
    
    /** termCdの条件. */
    public NotNullableStringCondition<K30mExpTypeCondition> termCd =
        new NotNullableStringCondition<K30mExpTypeCondition>("termCd", this);
    
    /** localeIdの条件. */
    public NotNullableStringCondition<K30mExpTypeCondition> localeId =
        new NotNullableStringCondition<K30mExpTypeCondition>("localeId", this);
    
    /** expTypeNameの条件. */
    public NotNullableStringCondition<K30mExpTypeCondition> expTypeName =
        new NotNullableStringCondition<K30mExpTypeCondition>("expTypeName", this);
    
    /** expTypeCategoryの条件. */
    public NullableStringCondition<K30mExpTypeCondition> expTypeCategory =
        new NullableStringCondition<K30mExpTypeCondition>("expTypeCategory", this);
    
    /** startDateの条件. */
    public NotNullableCondition<K30mExpTypeCondition, Timestamp> startDate =
        new NotNullableCondition<K30mExpTypeCondition, Timestamp>("startDate", this);
    
    /** endDateの条件. */
    public NotNullableCondition<K30mExpTypeCondition, Timestamp> endDate =
        new NotNullableCondition<K30mExpTypeCondition, Timestamp>("endDate", this);
    
    /** accountCdの条件. */
    public NotNullableStringCondition<K30mExpTypeCondition> accountCd =
        new NotNullableStringCondition<K30mExpTypeCondition>("accountCd", this);
    
    /** taxTypeCdの条件. */
    public NotNullableStringCondition<K30mExpTypeCondition> taxTypeCd =
        new NotNullableStringCondition<K30mExpTypeCondition>("taxTypeCd", this);
    
    /** sortKeyの条件. */
    public NotNullableCondition<K30mExpTypeCondition, Long> sortKey =
        new NotNullableCondition<K30mExpTypeCondition, Long>("sortKey", this);
    
    /** deleteFlagの条件. */
    public NotNullableStringCondition<K30mExpTypeCondition> deleteFlag =
        new NotNullableStringCondition<K30mExpTypeCondition>("deleteFlag", this);
    
    /** extensionAの条件. */
    public NullableStringCondition<K30mExpTypeCondition> extensionA =
        new NullableStringCondition<K30mExpTypeCondition>("extensionA", this);
    
    /** extensionBの条件. */
    public NullableStringCondition<K30mExpTypeCondition> extensionB =
        new NullableStringCondition<K30mExpTypeCondition>("extensionB", this);
    
    /** extensionCの条件. */
    public NullableStringCondition<K30mExpTypeCondition> extensionC =
        new NullableStringCondition<K30mExpTypeCondition>("extensionC", this);
    
    /** extensionDの条件. */
    public NullableStringCondition<K30mExpTypeCondition> extensionD =
        new NullableStringCondition<K30mExpTypeCondition>("extensionD", this);
    
    /** extensionEの条件. */
    public NullableStringCondition<K30mExpTypeCondition> extensionE =
        new NullableStringCondition<K30mExpTypeCondition>("extensionE", this);
    
    /** extensionFの条件. */
    public NullableStringCondition<K30mExpTypeCondition> extensionF =
        new NullableStringCondition<K30mExpTypeCondition>("extensionF", this);
    
    /** extensionGの条件. */
    public NullableStringCondition<K30mExpTypeCondition> extensionG =
        new NullableStringCondition<K30mExpTypeCondition>("extensionG", this);
    
    /** extensionHの条件. */
    public NullableStringCondition<K30mExpTypeCondition> extensionH =
        new NullableStringCondition<K30mExpTypeCondition>("extensionH", this);
    
    /** extensionIの条件. */
    public NullableStringCondition<K30mExpTypeCondition> extensionI =
        new NullableStringCondition<K30mExpTypeCondition>("extensionI", this);
    
    /** extensionJの条件. */
    public NullableStringCondition<K30mExpTypeCondition> extensionJ =
        new NullableStringCondition<K30mExpTypeCondition>("extensionJ", this);
    
    /** entryTsの条件. */
    public NotNullableCondition<K30mExpTypeCondition, Timestamp> entryTs =
        new NotNullableCondition<K30mExpTypeCondition, Timestamp>("entryTs", this);
    
    /** entryUserCdの条件. */
    public NotNullableStringCondition<K30mExpTypeCondition> entryUserCd =
        new NotNullableStringCondition<K30mExpTypeCondition>("entryUserCd", this);
    
    /** renewCntの条件. */
    public NotNullableCondition<K30mExpTypeCondition, Long> renewCnt =
        new NotNullableCondition<K30mExpTypeCondition, Long>("renewCnt", this);
    
    /** renewTsの条件. */
    public NotNullableCondition<K30mExpTypeCondition, Timestamp> renewTs =
        new NotNullableCondition<K30mExpTypeCondition, Timestamp>("renewTs", this);
    
    /** renewUserCdの条件. */
    public NotNullableStringCondition<K30mExpTypeCondition> renewUserCd =
        new NotNullableStringCondition<K30mExpTypeCondition>("renewUserCd", this);
}

5.2.2.4. SQL

5.2.2.4.1. 検索

  • Path
    src/main/resources/META-INF/sql/jp/co/slcs/kaiden2/product_workflow/foundation/model/service/K30mExpTypeService/selectView.sql
select
  exp.company_cd 
, exp.exp_type_cd
, exp.term_cd
, exp.locale_id
, exp.exp_type_name
, exp.exp_type_category
, exp.start_date
, exp.end_date
, exp.account_cd
, exp.tax_type_cd
, exp.sort_key
, exp.delete_flag
, exp.extension_a
, exp.extension_b
, exp.extension_c
, exp.extension_d
, exp.extension_e
, exp.extension_f
, exp.extension_g
, exp.extension_h
, exp.extension_i
, exp.extension_j
, exp.entry_ts
, exp.entry_user_cd
, exp.renew_cnt
, exp.renew_ts
, exp.renew_user_cd
, dept.department_name as company_name
, account.account_name as account_name
, tax.tax_type_name as tax_type_name
, tax.tax_rate as tax_rate
from k30m_exp_type exp
   left join ( select imm_department.company_cd
                    , imm_department.department_set_cd
                    , imm_department.department_cd
                    , imm_department.locale_id
                    , imm_department.start_date
                    , imm_department.end_date
                    , imm_department.department_name
              from imm_department) dept
     on  exp.company_cd = dept.company_cd
     and exp.company_cd = dept.department_set_cd
     and exp.company_cd = dept.department_cd
     and exp.locale_id = dept.locale_id
     /*IF searchCriteriaDate != null*/
     and dept.start_date <= /*searchCriteriaDate*/'2000/01/01'
     and dept.end_date > /*searchCriteriaDate*/'2000/01/01'
     --ELSE and dept.start_date <= exp.start_date 
     --ELSE and dept.end_date > exp.start_date 
     /*END*/
   left join k30m_account account
     on  exp.company_cd = account.company_cd
     and exp.account_cd = account.account_cd
     and exp.locale_id = account.locale_id
     /*IF searchCriteriaDate != null*/
     and account.start_date <= /*searchCriteriaDate*/'2000/01/01'
     and account.end_date > /*searchCriteriaDate*/'2000/01/01'
     --ELSE and account.start_date <= exp.start_date 
     --ELSE and account.end_date > exp.start_date 
     /*END*/
   left join k30m_tax_type tax
     on  exp.company_cd = tax.company_cd
     and exp.tax_type_cd = tax.tax_type_cd
     and exp.locale_id = tax.locale_id
     /*IF searchCriteriaDate != null*/
     and tax.start_date <= /*searchCriteriaDate*/'2000/01/01'
     and tax.end_date > /*searchCriteriaDate*/'2000/01/01'
     --ELSE and tax.start_date <= exp.start_date 
     --ELSE and tax.end_date > exp.start_date 
     /*END*/
/*BEGIN*/
where
/*IF companyCd != null*/
    exp.company_cd in/*companyCd*/('comp')
/*END*/
/*IF expTypeCd != null*/
  and exp.exp_type_cd = /*expTypeCd*/'expTypeCd'
/*END*/
/*IF termCd != null*/
  and exp.term_cd = /*termCd*/'termCd'
/*END*/
/*IF localeId != null*/
  and exp.locale_id = /*localeId*/'localeId'
/*END*/
/*IF expTypeName != null*/
  and exp.exp_type_name like /*expTypeName*/'%' ESCAPE '$'
/*END*/
/*IF expTypeCategory != null*/
  and exp.exp_type_category like /*expTypeCategory*/'expTypeCategory' ESCAPE '$'
/*END*/
/*IF searchCriteriaDate != null*/
  and exp.start_date <= /*searchCriteriaDate*/'1900/01/01'
  and exp.end_date    > /*searchCriteriaDate*/'2999/12/31'
/*END*/
/*IF accountCd != null*/
  and exp.account_cd = /*accountCd*/'accountCd'
/*END*/
/*IF taxTypeCd != null*/
  and exp.tax_type_cd = /*taxTypeCd*/'taxTypeCd'
/*END*/
/*IF sortKey != null*/
  and exp.sort_key = /*sortKey*/'0'
/*END*/
/*IF deleteFlag != null*/
  and exp.delete_flag = /*deleteFlag*/'0' 
/*END*/
/*IF extensionA != null*/
  and exp.extension_a like /*extensionA*/'extensionA' ESCAPE '$'
/*END*/
/*IF extensionB != null*/
  and exp.extension_b like /*extensionB*/'extensionB' ESCAPE '$'
/*END*/
/*IF extensionC != null*/
  and exp.extension_c like /*extensionC*/'extensionC' ESCAPE '$'
/*END*/
/*IF extensionD != null*/
  and exp.extension_d like /*extensionD*/'extensionD' ESCAPE '$'
/*END*/
/*IF extensionE != null*/
  and exp.extension_e like /*extensionE*/'extensionE' ESCAPE '$'
/*END*/
/*IF extensionF != null*/
  and exp.extension_f like /*extensionF*/'extensionF' ESCAPE '$'
/*END*/
/*IF extensionG != null*/
  and exp.extension_g like /*extensionG*/'extensionG' ESCAPE '$'
/*END*/
/*IF extensionH != null*/
  and exp.extension_h like /*extensionH*/'extensionH' ESCAPE '$'
/*END*/
/*IF extensionI != null*/
  and exp.extension_i like /*extensionI*/'extensionI' ESCAPE '$'
/*END*/
/*IF extensionJ != null*/
  and exp.extension_j like /*extensionJ*/'extensionJ' ESCAPE '$'
/*END*/ 
/*IF companyName != null*/
  and dept.department_name like /*companyName*/'companyName' ESCAPE '$'
/*END*/ 
/*IF accountName != null*/
  and account.account_name like /*accountName*/'accountName' ESCAPE '$'
/*END*/ 
/*IF taxTypeName != null*/
  and tax.tax_type_name like /*taxTypeName*/'taxTypeName' ESCAPE '$'
/*END*/ 
/*IF taxRate != null*/
  and tax.tax_rate = /*taxRate*/'0' 
/*END*/ 
/*END*/
/*IF orderBy != null*/
 ORDER BY /*$orderBy*/company_cd
/*END*/

5.2.2.5. Taglib

  • Path
    src/main/resources/META-INF/tld/kaidenMstSearchWorkflow/KaidenMstSearchWorkflow.tld
<?xml version="1.0" encoding="UTF-8" ?>
<taglib xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:xml="http://www.w3.org/XML/1998/namespace"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
         http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd"
        version="2.1">
  <display-name>KAIDEN product_workflow Components Master Search Tag library</display-name>
  <tlib-version>1.0</tlib-version>
  <short-name>master search product_workflow</short-name>
  <uri>http://kaiden.slcs.co.jp/taglib/master_search/workflow</uri>
  <tag>
    <name>project</name>
    <tag-class>jp.co.slcs.kaiden2.product_workflow.foundation.taglib.MstSearchProject</tag-class>
    <body-content>empty</body-content>
    <attribute>
      <name>searchCriteriaDate</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>searchCriteriaCompany</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>searchCriteriaProjectCd</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>resultChain</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>resultValue</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>primaryTarget</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>includeDisabled</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <!-- 以下 kaidenui text と同様 -->
    <attribute>
      <name>name</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>surfaceKey</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>mode</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>value</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>formated</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>imeMode</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <dynamic-attributes>true</dynamic-attributes>
  </tag>
  <tag>
    <name>expType</name>
    <tag-class>jp.co.slcs.kaiden2.product_workflow.foundation.taglib.MstSearchExpType</tag-class>
    <body-content>empty</body-content>
    <attribute>
      <name>searchCriteriaDate</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>searchCriteriaCompany</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>searchCriteriaExpTypeCd</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>resultChain</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>resultValue</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>primaryTarget</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>includeDisabled</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <!-- 以下 kaidenui text と同様 -->
    <attribute>
      <name>name</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>surfaceKey</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>mode</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>value</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>formated</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>imeMode</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <dynamic-attributes>true</dynamic-attributes>
  </tag>
  <tag>
    <name>allowance</name>
    <tag-class>jp.co.slcs.kaiden2.product_workflow.foundation.taglib.MstSearchAllowance</tag-class>
    <body-content>empty</body-content>
    <attribute>
      <name>searchCriteriaDate</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>searchCriteriaCompany</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>searchCriteriaAllowanceCd</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>allowanceCriteriaUserCd</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>currencyCd</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>resultChain</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>resultValue</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>primaryTarget</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>includeDisabled</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <!-- 以下 kaidenui text と同様 -->
    <attribute>
      <name>name</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>surfaceKey</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>mode</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>value</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>formated</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>imeMode</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <dynamic-attributes>true</dynamic-attributes>
  </tag>
  <tag>
    <name>account</name>
    <tag-class>jp.co.slcs.kaiden2.product_workflow.foundation.taglib.MstSearchAccount</tag-class>
    <body-content>empty</body-content>
    <attribute>
      <name>searchCriteriaDate</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>searchCriteriaCompany</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>searchCriteriaAccountCd</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>resultChain</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>resultValue</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>primaryTarget</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>includeDisabled</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <!-- 以下 kaidenui text と同様 -->
    <attribute>
      <name>name</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>surfaceKey</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>mode</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>value</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>formated</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>imeMode</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <dynamic-attributes>true</dynamic-attributes>
  </tag>
  <tag>
    <name>vendor</name>
    <tag-class>jp.co.slcs.kaiden2.product_workflow.foundation.taglib.MstSearchVendor</tag-class>
    <body-content>empty</body-content>
    <attribute>
      <name>searchCriteriaDate</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>searchCriteriaCompany</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>searchCriteriaCustomerCd</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>resultChain</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>resultValue</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>primaryTarget</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>includeDisabled</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <!-- 以下 kaidenui text と同様 -->
    <attribute>
      <name>name</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>surfaceKey</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>mode</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>value</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>formated</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <attribute>
      <name>imeMode</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
      <type>String</type>
    </attribute>
    <dynamic-attributes>true</dynamic-attributes>
  </tag>
  
</taglib>

5.2.2.6. XML

  • Path
    src/main/webapp/WEB-INF/classes/jp/co/slcs/kaiden2/product_workflow/feature/action/kaiden/master/ExpTypeSearchSettings.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<genericSearchSettings xmlns="http://kaiden.slcs.co.jp/xmlschema/genericSearchSettings">
  
  <!-- 検索画面に表示する最大件数 -->
  <limit>20</limit>
  <!-- 検索画面の行番号ラベルID -->
  <rownumberSurfaceKey></rownumberSurfaceKey><!-- デフォルトを利用 -->
  <!-- 検索画面のカラム設定 -->
  <listCols>
    <listCol>
      <!-- 対象マスタのフィールドキー -->
      <fieldKey>expTypeCd</fieldKey>
      <!-- キーワード検索対象とするか否か -->
      <keywordSearchTarget>true</keywordSearchTarget>
      <!-- 表示幅 -->
      <width>100px</width>
      <!-- 表示位置 -->
      <align></align>
      <!-- ヘッダラベルID -->
      <headerSurfaceKey>PWKF.expTypeCd</headerSurfaceKey>
      <!-- ソート可否 -->
      <sortable>false</sortable>
    </listCol>
    <listCol>
      <fieldKey>expTypeName</fieldKey>
      <keywordSearchTarget>true</keywordSearchTarget>
      <width>150px</width>
      <align></align>
      <headerSurfaceKey>PWKF.expTypeName</headerSurfaceKey>
      <sortable>false</sortable>
    </listCol>
    <listCol>
      <fieldKey>accountCd</fieldKey>
      <keywordSearchTarget>true</keywordSearchTarget>
      <width>100px</width>
      <align></align>
      <headerSurfaceKey>PWKF.accountCd</headerSurfaceKey>
      <sortable>false</sortable>
    </listCol>
    <listCol>
      <fieldKey>accountName</fieldKey>
      <keywordSearchTarget>true</keywordSearchTarget>
      <width>150px</width>
      <align></align>
      <headerSurfaceKey>PWKF.accountName</headerSurfaceKey>
      <sortable>false</sortable>
    </listCol>
    <listCol>
      <fieldKey>taxTypeCd</fieldKey>
      <keywordSearchTarget>true</keywordSearchTarget>
      <width>100px</width>
      <align></align>
      <headerSurfaceKey>PWKF.taxTypeCd</headerSurfaceKey>
      <sortable>false</sortable>
    </listCol>
    <listCol>
      <fieldKey>taxTypeName</fieldKey>
      <keywordSearchTarget>true</keywordSearchTarget>
      <width>150px</width>
      <align></align>
      <headerSurfaceKey>PWKF.taxTypeName</headerSurfaceKey>
      <sortable>false</sortable>
    </listCol>
  </listCols>
  <!-- 検索画面のソート順 -->
  <orders>
    <order>
      <fieldKey>sortKey</fieldKey>
      <type>asc</type>
    </order>
    <order>
      <fieldKey>expTypeCd</fieldKey>
      <type>asc</type>
    </order>
  </orders>
</genericSearchSettings>