Skip to main content link. Accesskey S
  • Log In
  • Help
  • IBM Logo
  • IBM Notes and Domino Application Development wiki
  • All Wikis
  • All Forums
  • Home
  • Product Documentation
  • Community Articles
  • Learning Center
  • IBM Redbooks
Community Articles Product Documentation Learning Center IBM Redbooks This category Redbooks Wiki: Best Practices for Domino 8.0 Web Application Development Redbooks Wiki: Building Domino Web Applications using Domino 8.5.1 Redbooks Wiki: Creating Plugins for Lotus Notes, Sametime, and Symphony Redbooks Wiki: Lotus Domino Development Best Practices Custom Search Scope...
Search
Community Articles > 日本語 - Japanese > 文書の保存アクション
  • New Article
  • Share Show Menu▼
  • Subscribe Show Menu▼

About the Original Author

IBM contributorAtsushi Sato
Contribution Summary:
  • Articles authored: 37
  • Articles edited: 2
  • Comments Posted: 0

Recent articles by this author

XPages における入力チェック方法

必須入力チェックの方法とエラーメッセージの表示方法について解説します

XPages Extension Library「Dialog」の利用

8.5.3 Upgrade Pack1より利用できるExtension Libraryを使用し自作ダイアログの表示を行います

XPages Extension Library「TooltipDialog」の利用

XPages Extension Library「TooltipDialog」の利用方法について記述する。

XPages Extension Library「Tooltip」の利用

XPages Extension Library「Tooltip」の利用方法について記述する。

XPages Extension Library「Toolbar」の利用

XPages Extension Library「Toolbar」の利用方法について記述する。

Community article文書の保存アクション

Added by IBM contributor Atsushi Sato | Edited by IBM contributor Atsushi Sato on July 25, 2012 | Version 4
  • Edit
  • More Actions Show Menu▼
Rate this article 1 starsRate this article 2 starsRate this article 3 starsRate this article 4 starsRate this article 5 stars
expanded Abstract
collapsed Abstract
XPages での文書やデータソースの保存に関する解説です。
Tags: XPages, データソース, 九州地区ノーツパートナー会
ShowTable of Contents
HideTable of Contents
  • 1 概要
  • 2 実現方法
    • 2.1 現在バインディングした文書情報を保存(シンプルアクション)
    • 2.2 現在バインディングした文書情報を保存(JavaScript)
    • 2.3 他のDBにある文書を保存(JavaScript)
  • 3 調査環境

概要


 XPagesにて保存を実施する場合、LotusScriptと使用する関数は異なるが、同じような記述内容で文書の保存を行うことができる。

実現方法



実現方法にあたっては、現在バインディングした文書情報を保存する場合と、他のDBにある文書に対して保存を行う場合を例として記述する。
No.
実現例
詳細
(1)現在バインディングした文書情報を保存(シンプルアクション)シンプルアクションを使用して文書を保存する。
(2)(JavaScript)JavaScriptを用いて文書を保存する。

保存のタイミングで値を変換するなど、複雑な処理を行う場合に使用する。

(3)他のDBにある文書を保存(JavaScript)他DBに存在する文書に対して更新を行う。

現在バインディングした文書情報を保存(シンプルアクション)

保存ボタンの[イベント]の中にシンプルアクションを記述する。

1.フィールドの配置

  データソースのフィールドをXPageにドラッグ&ドロップする。

 


2.ボタンの配置

  入力項目を保存するためのボタンを配置する。

 


3.ボタンの設定

  3-1.ボタンの[イベント]タブから、[アクションの追加]を行う。

 


  3-2.アクションにて [文書の保存]を選択。

  データソース名にて保存対象のデータソースを指定する。


   
 
  ◆補足
  データソース名を指定しなければ現在の文書を保存する。(動作は上の例と同様)
 
4.保存内容の確認

  ブラウザで入力項目に値を入力して[Save]ボタンをクリックすると、入力した内容が保存される。

     ◆ブラウザイメージ

     各項目に、値を入力して[Save]ボタンをクリックする。

     

     ◆Notesのビュー

     入力した内容が文書として保存される。


     

     ◆補足

     手順「3.ボタンの設定」の「アクション」で[データソースの保存]を選択した場合、データ保存され新しいページが開く。

     保存では、現在のページに表示されている全てのデータソースが保存される。

     また、新しく開くページには、「同じページ」、「前のページ」、「起動ページ」、または特定のxPageを設定できる。


     

      保存内容の確認

       ◆ブラウザイメージ

        各項目に、値を入力して[Save]ボタンをクリックする。

        

        →同じページが開く。(新規登録できる状態となる)

        


       ◆Notesのビュー

        入力した内容が文書として保存される。

        




現在バインディングした文書情報を保存(JavaScript)

保存したい値をスコープ変数へ割り当て、保存ボタンの[イベント]のサーバーサイドにJavaScriptを記述する。



1.スコープ変数へ割り当て

  各入力項目の[プロパティ]タブの[データ]を選択し、スコープ変数に割り当てる。(例はリクエスト変数colorに割り当て)

 


2.コードを記載

  ボタンの[イベント]タブから、[スクリプトエディタ]を選択し、コードを記載する。

 

項目
内容
「Save」ボタン・[イベント]-[onclick]-[サーバー]-[スクリプトエディタ]内に下記を記述する。


var doc = database.createDocument();
doc.replaceItemValue("Color",requestScope.color);
doc.replaceItemValue("Shape",requestScope.shape);
doc.replaceItemValue("Statement",requestScope.statement);
doc.replaceItemValue("Form","AgentDemo");
doc.save();
requestScope.color = null;
requestScope.shape = null;
requestScope.statement = null;


3.保存内容の確認

  ブラウザで入力項目に値を入力して[Save]ボタンをクリックすると、入力した内容が保存される。

     ◆ブラウザイメージ

     各項目に、値を入力して[Save]ボタンをクリックする。

     

     →入力項目がクリアされる。(新規に登録できる状態となる)

     


     ◆Notesのビュー

     入力した内容が文書として保存される。

     


  ◆補足

  スコープ変数を使わない場合は、以下の記述でも同じ結果が得られる。


var doc = database.createDocument();
doc.appendItemValue("Form","AgentDemo");
doc.appendItemValue("Color",getComponent("color1").getValue());
doc.appendItemValue("Shape",getComponent("shape1").getValue());
doc.appendItemValue("Statement",getComponent("statement1").getValue());
doc.save();
getComponent("color1").setValue("");
getComponent("shape1").setValue("");
getComponent("statement1").setValue("");

他のDBにある文書を保存(JavaScript)

編集ボックスとボタンを配置し、[イベント]でサーバーサイドにJavaScriptを記述する。



1.フィールドの配置

  編集ボックスとボタンを配置する。

 


2.コードを記載

  ボタンの[イベント]タブから、[スクリプトエディタ]を選択し、コードを記載する。

 
項目
内容
「他のDBの文書を更新」

ボタン

[イベント]-[onclick]-[サーバー]-[スクリプトエディタ]内に下記を記述する。


var db = session.getDatabase("rskk563/rskkgdev852","NotesDB/Miyani/study/mine/xScrapbo.nsf");
var doc = db.createDocument();
doc.replaceItemValue("Form","AgentDemo");
doc.replaceItemValue("Color",getComponent("color").getValue());
doc.replaceItemValue("Shape",getComponent("shape").getValue());
doc.replaceItemValue("Statement",getComponent("statement").getValue());
doc.save();
getComponent("color").setValue("");
getComponent("shape").setValue("");
getComponent("statement").setValue("");





3.保存内容の確認

  ブラウザで入力項目に値を入力して[他のDBの文書を更新]ボタンをクリックすると、入力した内容が保存される。

     ◆ブラウザイメージ

     各項目に、値を入力して[他のDBの文書を更新]ボタンをクリックする。

     

     ◆Notesのビュー

     入力した内容が文書として保存される。

     


調査環境


Lotus Domino Designer 8.5.3 Upgrade Pack1
Internet Explorer 8
Google Chrome 19.0.1084.46 m
Mozilla Firefox 12
Safari 5.1.5

この記事は九州地区ノーツパートナー会技術部会(リコー IT ソリューションズ 株式会社)によって作成されました。

  • Edit
  • More Actions Show Menu▼


expanded Attachments (0)
collapsed Attachments (0)
Edit the article to add or modify attachments.
expanded Versions (4)
collapsed Versions (4)
Version Comparison     
VersionDateChanged by              Summary of changes
This version (4)Jul 25, 2012 4:37:17 AMAtsushi Sato  IBM contributor
3Jul 25, 2012 4:36:16 AMAtsushi Sato  IBM contributor
2Jul 25, 2012 4:05:19 AMAtsushi Sato  IBM contributor
1Jul 25, 2012 4:04:08 AMAtsushi Sato  IBM contributor
expanded Comments (0)
collapsed Comments (0)
Copy and paste this wiki markup to link to this article from another article in this wiki.
Go ElsewhereStay ConnectedHelpAbout
  • IBM Collaboration Solutions wikis
  • IBM developerWorks
  • IBM Software support
  • Twitter LinkIBMSocialBizUX on Twitter
  • FacebookIBMSocialBizUX on Facebook
  • ForumsLotus product forums
  • BlogsIBM Social Business UX blog
  • Community LinkIBM Collaboration Solutions
  • Wiki Help
  • Forgot user name/password
  • Wiki design feedback
  • Content feedback
  • About the wiki
  • About IBM
  • Privacy
  • Accessibility
  • IBM Terms of use
  • Wiki terms of use