開発手順

  1. 新しいDB名でDBを作成する
  2. 作成したDBに、Sampleアプリのバックアップファイル(HaluProject\Halu\Application\Sample\バックアップ\sample.backup)をリストアする
  3. Sampleアプリの業務テーブル(顧客、商品、受注ヘッダ、受注明細、受注CSV、受注CSVエラー)を削除する
  4. 1-2で設計した、アプリケーションのテーブルを作成する
    ※バッチCSV管理・バッチ帳票管理は、Haluのバッチ処理が参照しないため、削除できます。
    ※ユーザテーブルには、Sampleアプリのユーザー(ADMIN001・TEST001)が登録されています。
     「2-3. ログインとメニューを作成する」の確認に使用できます。運用を始める前に、削除するか、パスワードを変更してください。
フォルダ内容
Html\cssアプリケーション全体で共通のスタイル
Html\js画面タイプのMixin
Html\SvelteComponentヘッダー・フッターなどの部品(Svelteコンポーネント)
Html\images・Html\fonts画像・フォント
Html\Apps\Error404指定した画面が見つからない場合に表示する画面
Server\Commons共通のPython
画面コピーするフォルダ
LoginHtml\Apps\Login・Json\Apps\Login・Server\Apps\Login
StartMenuHtml\Apps\StartMenu・Json\Apps\StartMenu
AdminMenuHtml\Apps\AdminMenu・Json\Apps\AdminMenu
ファイル呼び出される条件__init__の引数
{画面名}_controller.pytran.jsonのrequestのprogが"yes"mvclog・mvclogname・requestdict・validation_data
{画面名}_model.pysql.jsonのprogが"yes"mvclog・mvclogname・database・sqldict・requestdict
{画面名}_view.pytran.jsonのresponseのprogが"yes"mvclog・mvclogname・responsedict・sqldict・requestdict
AppComponents.main.js
import '../{コンポーネント名}/{コンポーネント名}.main.js';
install
cd HaluProject\Halu\Application\{プロジェクト名}\Html\SvelteComponent
npm install
ビルド
npm run build
index.html
<div componentID="{コンポーネント名}" props-{名前}="{値}"></div>
  1. 処理用の定義を作成する。tran.jsonのrequestに、batchParam・batchKeyを定義する
  2. 起動用の定義を作成する。sql.jsonのbatchControllに、1の処理用の定義(ロードパス名・処理モード)を指定する
  3. 起動プログラムを、起動用の定義のフォルダ名と同じ名前で作成する。2のtran.jsonのパスと、実行結果の出力先(Server\BatchLoadOut\)を指定する
  4. 起動画面のsql.jsonに、batchParam・batchStartupを定義する。batchStartupのバッチロードパス名に、3の起動プログラムを指定する
  5. バッチサーバーを起動して、起動画面からバッチを実行する(「起動方法」を参照)
  1. Excelのテンプレート(ExcelTemplate\Apps\{帳票名}\{テンプレート名}.xlsx)を作成する。書式はSheet1シートに作成する
  2. 帳票フォルダのtran.jsonに、requestのprintKey・printParamと、responseのexcelinfo(テンプレートの名前・出力するExcelの名前・各レコードのExcelへの書き込み)を定義する
  3. 帳票フォルダのsql.jsonに、帳票に出力する値を取得するSQLを定義する
  4. 呼び出し元の画面のsql.jsonに、printKey・printParamを定義する。printParamのhtmlに帳票フォルダを、modeに帳票のトランザクション名を指定する
  5. 呼び出し元の画面のAppspecのrequestInfoに、帳票のtran.jsonのmode(printHまたはprintHM)を、先頭の要素にして登録する。
    登録の書式は「ドキュメント>Appspec項目一覧」を参照する
  6. プリントサーバーを起動して、呼び出し元の画面から印刷し、PDFがダウンロードされることを確認する(「起動方法」を参照)
ファイル呼び出される条件__init__の引数
{帳票名}_model.pysql.jsonのprogが"yes"mvclog・mvclogname・database・sqldict・requestdict
{帳票名}_view.pytran.jsonのresponseのprogが"yes"mvclog・mvclogname・responsedict・sqldict・requestdict
{帳票名}_form.pytran.jsonのresponse.excelinfoのprogが"yes"excellog・excellogname・excelcreate・responsedict・sqldict・requestdict
  1. {画面名}_dataset.json:データ項目を追加する
  2. {画面名}_validation.json:入力チェックのルールを追加する
  3. {画面名}_{トランザクション名}_tran.json:リクエストに項目を追加する。レスポンスには、項目と値の取得元を追加する
  4. {画面名}_{トランザクション名}_sql.json:SQLに渡す項目・結果として受け取る項目に追加する。freesqlを使用している場合は、SQL本文にも追加する
  5. index.html:項目を表示・入力する要素を追加し、halu-ds-id・halu-ds-fieldを指定する
  6. Python(ある場合):SQLの組み立てやレスポンスの編集に、項目を追加する
項目内容
画面名PartnerListMainte(画面のタイトル:取引先一覧登録)
画面タイプlist-mainte(一覧+行編集)
項目取引先ID(自動採番)・取引先名(必須)・備考
コピー元Sampleアプリの顧客一覧登録(CustomerListMainte)
取引先テーブルの作成
create table "取引先" (
  "取引先ID" serial not null
  , "取引先名" character varying(100) not null
  , "備考" character varying
  , "登録日時" timestamp(6) without time zone
  , "登録ユーザ" character varying
  , "更新日時" timestamp(6) without time zone
  , "更新ユーザ" character varying
  , "削除フラグ" character varying(1) default '0'
  , constraint "取引先_PKC" primary key ("取引先ID")
) ;
置換の対象置換前置換後
画面名(フォルダ名・ファイル名・ファイルの中)CustomerListMaintePartnerListMainte
プロジェクト名(ファイルの中)Sample{プロジェクト名}
DB名(Jsonのファイルの中)sample{DB名}
順置換前置換後置換される箇所
1顧客氏名取引先名項目名(Dataset・入力チェック・リクエストとレスポンス・SQLの項目、画面の列見出しと入力欄)
2顧客取引先項目名顧客ID、テーブル名顧客、画面のタイトル顧客一覧登録、コメント
  1. ログイン画面を開き、ログインする(「2-3. ログインとメニューを作成する」の④を参照)
  2. メニューの「マスタ」タブで、「取引先一覧登録」を選択する
  3. 「行追加」で行を追加し、取引先名を入力して、「登録」を押す。確認のダイアログが表示され、一覧に登録した取引先が表示される
  4. 削除する行にチェックを付けて、「削除」を押す。チェックを付けた行が一覧から消える