tags 2013-07-02
DESCRIPTION
sample database posted on GitHub: https://github.com/miyako/4d-training-tagsTRANSCRIPT
4D TAGS
4D TAGS Excel XML スプレッドシート編
4D TAGS
4D TAGS
HTMLに4D式や処理への参照を挿入するためのタグ
4D TAGS
HTMLに4D式や処理への参照を挿入するためのタグ
4D TAGS
HTMLに4D式や処理への参照を挿入するためのタグ
HTMLXMLSVGTEXT
* テキスト全般
4D TAGS
HTMLに4D式や処理への参照を挿入するためのタグ
4D TAGS
HTMLに4D式や処理への参照を挿入するためのタグ
変数・配列関数(コマンド)フィールドメソッド
4D TAGS
HTMLに4D式や処理への参照を挿入するためのタグ
4D TAGS
HTMLに4D式や処理への参照を挿入するためのタグ
条件分岐繰り返し
4D TAGS
HTMLに4D式や処理への参照を挿入するためのタグ
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
<!--4DHTML [Product]name--><!--4DHTML vtProductName--><!--4DHTML atProductNames{7}--><!--4DHTML Table name(1)-->
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
<!--4DTEXT [Product]id--><!--4DTEXT vlProductPrice--><!--4DTEXT alProductPrices{7}--><!--4DTEXT Length(Table name(1))-->
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
<!--#4DSCRIPT/MethodName/Param-->
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
<!--#4DINCLUDE header/menu.html-->
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
<!--4DIF (Condition1)--> <!--4DINCLUDE menu1.html--><!--4DELSEIF (Condition2)--> <!--4DINCLUDE menu2.html--><!--4DELSE--> <!--4DINCLUDE menu0.html--><!--4DENDIF-->
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP 1/3• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP 1/3• 4DBASE
<!--4DLOOP (atProductNames)--> <!--4DTEXT atProductNames{atProductNames}--><!--4DENDLOOP-->
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP 1/3• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP 2/3• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP 2/3• 4DBASE
<!--4DLOOP [Product]--> <!--4DTEXT [Product]name--><!--4DENDLOOP-->
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP 2/3• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP 3/3• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP 3/3• 4DBASE
<!--4DLOOP shouldProcessLoop--> <!--4DTEXT [Product]name--><!--4DENDLOOP-->
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP 3/3• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
<!--4DINCLUDE header.html--><!--4DBASE folder/--><!--4DINCLUDE page.html--><!--4DBASE sub/--><!--4DINCLUDE subpage.html--><!--4DBASE WEBFOLDER--><!--4DINCLUDE footer.html-->
4D TAGS
• 4DHTML• 4DTEXT• 4DSCRIPT• 4DINCLUDE• 4DIF, 4DELSE, 4DELSEIF, 4DENDIF• 4DLOOP, 4DENDLOOP• 4DBASE
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグ
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグ
<p>
<!--4DHTML [Product]name--> </p>
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグ
[Product]name:="オーブントースター"
<p>
<!--4DHTML [Product]name--> </p>
+
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグ
[Product]name:="オーブントースター"
<p>
<!--4DHTML [Product]name--> </p>
<p>オーブントースター</p>
+=
4D TAGSHTTPサーバーで4Dタグを処理
WEB SEND FILEWEB SEND BLOBWEB SEND TEXT
HTMLに4D式や処理への参照を挿入するためのタグ
4D TAGSHTTPサーバーで4Dタグを処理
WEB SEND FILEWEB SEND BLOBWEB SEND TEXT
PROCESS 4D TAGSHTTPサーバーとは関係なく4Dタグを処理
HTMLに4D式や処理への参照を挿入するためのタグ
4D TAGSHTTPサーバーで4Dタグを処理
WEB SEND FILEWEB SEND BLOBWEB SEND TEXT
PROCESS 4D TAGSHTTPサーバーとは関係なく4Dタグを処理
HTMLに4D式や処理への参照を挿入するためのタグ
4D TAGS
PROCESS 4D TAGS
HTMLに4D式や処理への参照を挿入するためのタグ
4D TAGS
PROCESS 4D TAGS(inText;outText)
Unicode(推奨)
HTMLに4D式や処理への参照を挿入するためのタグ
4D TAGS
PROCESS 4D TAGS(inBlob;outBlob)
non-Unicode(非推奨)
HTMLに4D式や処理への参照を挿入するためのタグ
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグ
HTMLXMLSVGTEXT
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグ
Excel 2004 XML スプレッドシートXML
Excel ブックXLSX
Excel 97-2004ブックXLS
HTMLXMLSVGTEXT
4D TAGS
HTMLXMLSVGTEXT
HTMLに4D式や処理への参照を挿入するためのタグ
Excel 2004 XML スプレッドシートXML
Excel ブックXLSX
Excel 97-2004ブックXLS
XML
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグXML
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグXML
タブ区切りテキストデータ
TSV
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグXML
タブ区切りテキストデータ
TSV
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグXML
タブ区切りテキストデータ
TSV
Excel 2004 XML スプレッドシート
XML
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグXML
タブ区切りテキストデータ
TSV
Excel 2004 XML スプレッドシート
XMLXML
4D TAGS
TAGS
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグXML
4D TAGS
XMLTAGS
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグXML
4D TAGS
XMLTAGS
Excel 2004 XML スプレッドシート
XML
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグXML
4D TAGS
XMLTAGS
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグXML
4D TAGS
XMLTAGS
オープンオフィスXML
OOXMLZIP
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグXML
4D TAGS
XMLTAGS
XLSXExcel ブック
オープンオフィスXML
OOXMLZIP
https://github.com/miyako/4d-training-tags
VLOOKUP
VLOOKUP
VLOOKUP
[Product]idプライマリーキー自動インクリメント倍長整数
VLOOKUP
VLOOKUP
[Inventory]idプライマリーキー自動インクリメント倍長整数
VLOOKUP
1. [Product] レコード作成 『Product_IMPORT_RECORDS』
2. [Product] レコード書き出し 『 タブ区切りテキスト形式』(UTF-8)
3. Excel ワークシート追加 『Product』
4. Excel テキストファイル読み込み 『インポート...』(UTF-8)
5. Excel 数値フォーマット設定 『数値: 桁区切り(,)を使用する』
VLOOKUP
6. Excel ワークシート名前変更 『Inventory』
7. Excel B列関数 『=VLOOKUP(A2,Product!$A$2:$C$21,2,FALSE)』
8. Excel C列関数 『=VLOOKUP(A2,Product!$A$2:$C$21,3,FALSE)』
9. Excel E列関数 『=C2*D2』
10.Excel ワークブック書き出し 『Excel 2004 XML スプレッドシート』
VLOOKUP
ss:ExpandedRowCount"21""<!--#4dtext Records in selection([Product])+1-->""<!--#4dtext Records in selection([Inventory])+1-->"
<Created><LastSaved>2013-06-28T08:02:22Z<!--#4dhtml string(Current date;ISO Date GMT;Current time)-->
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグXML
4D TAGS
XMLTAGS
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグXML
4D TAGS
XMLTAGS
Excel 2004 XML スプレッドシート
XML
4D TAGSHTMLに4D式や処理への参照を挿入するためのタグXML
4D TAGS
XMLTAGS
Excel 2004 XML スプレッドシート
XML
Excel 97-2004ブック
XLSASVBS
AppleScripttell application "Microsoft Excel"!! launch!! tell application "System Events"! ! set visible of processes whose name is "Microsoft Excel" to true! end tell!! set screen updating to false! set display alerts to false!! set theXmlPath to argument("XML_DOCUMENT_PATH") of parameters! set theXlsPath to argument("XLS_DOCUMENT_PATH") of parameters!! set theBooks to every workbook!! repeat with theBook in theBooks! ! if name of theBook is theXlsPath then close theBook saving no! ! if full name of theBook is theXlsPath then close theBook saving no! end repeat!! set theWorkbook to open workbook workbook file name theXmlPath!! save workbook as theWorkbook file format Excel98to2004 file format filename
theXlsPath with overwrite!! set screen updating to true!! activate!end tell
AppleScripttell application "Microsoft Excel"!! launch!! tell application "System Events"! ! set visible of processes whose name is "Microsoft Excel" to true! end tell!! set screen updating to false! set display alerts to false!! set theXmlPath to argument("XML_DOCUMENT_PATH") of parameters! set theXlsPath to argument("XLS_DOCUMENT_PATH") of parameters!! set theBooks to every workbook!! repeat with theBook in theBooks! ! if name of theBook is theXlsPath then close theBook saving no! ! if full name of theBook is theXlsPath then close theBook saving no! end repeat!! set theWorkbook to open workbook workbook file name theXmlPath!! save workbook as theWorkbook file format Excel98to2004 file format filename
theXlsPath with overwrite!! set screen updating to true!! activate!end tell
VBScriptSet objExcelApplication!= GETAPP("Excel.Application")
theXmlPath = GETENV("XML_DOCUMENT_PATH")theXlsPath = GETENV("XLS_DOCUMENT_PATH")
objExcelApplication.Visible = True
objExcelApplication.ScreenUpdating = FalseobjExcelApplication.DisplayAlerts = False
Set theWorkbooks = objExcelApplication.Workbooks
For Each theWorkbook In theWorkbooks! If (theWorkbook.FullName = theXlsPath) Or (theWorkbook.Name = theXlsPath) Then! ! theWorkbook.Close (False)! End IfNext
Set theWorkbook = objExcelApplication.Workbooks.Open(theXmlPath)
theWorkbook.SaveAs theXlsPath, 56
objExcelApplication.ScreenUpdating = True
CreateObject("WScript.Shell").AppActivate objExcelApplication.Caption
VBScriptSet objExcelApplication!= GETAPP("Excel.Application")
theXmlPath = GETENV("XML_DOCUMENT_PATH")theXlsPath = GETENV("XLS_DOCUMENT_PATH")
objExcelApplication.Visible = True
objExcelApplication.ScreenUpdating = FalseobjExcelApplication.DisplayAlerts = False
Set theWorkbooks = objExcelApplication.Workbooks
For Each theWorkbook In theWorkbooks! If (theWorkbook.FullName = theXlsPath) Or (theWorkbook.Name = theXlsPath) Then! ! theWorkbook.Close (False)! End IfNext
Set theWorkbook = objExcelApplication.Workbooks.Open(theXmlPath)
theWorkbook.SaveAs theXlsPath, 56
objExcelApplication.ScreenUpdating = True
CreateObject("WScript.Shell").AppActivate objExcelApplication.Caption
4D TAGS Excel XML スプレッドシート編