Creator フォームのレポートを公開し、こちらの手順に従って公開キーを取得します。公開キーは次の形式になります。
https://creatorapp.zohopublic.com/<AppOwnerName>/<AppName>/report-perma/<ReportLinkName>/qvGRXuEHg9AQT5CguhV27krp*****
ハイライトされているキーは、Deluge スクリプト内で'PublishedLinkKey'として使用します。
Deluge で画像の公開リンクを作成します。以下は、Creator フォーム内の画像に対してダウンロード可能なリンクを作成するサンプルコードです。
employeerecord = Employee_Timesheet_Form[ID==input.ID];
info employeerecord.Timer_Screenshot;
imageLink = employeerecord.Timer_Screenshot.getsuffix('image/');
imageLink = employeerecord.getPrefix('\'');
imageURL = 'https://creatorexport.zoho.com/file/<AppOwnerName>/<AppName>/<ReportLinkName>/'+ input.ID + '/<ImageFieldName>/image-download/<PublishedLinkKey>?filepath=/' + imageLink;
info imageURL;
以下は Creator の imageURL のサンプルです。
https://creatorexport.zoho.com/file/go*****/employee_****/Employee_*****/1309016000000318035/Timer_Screenshot/image-download/qvGRXuEHg9AQT5CguhV27krp*****?filepath=/1656509699030.png
このimageURLを使用して、Creator の画像を Writer にマージできます。
画像を Zoho WorkDrive にアップロードし、外部ダウンロードリンクを作成します。手順はこちらをご覧ください。以下は WorkDrive URL のサンプルです。
https://workdrive.zohoexternal.com/external/b24042070f8fb42d******/download?directDownload=True
この URL を Deluge スクリプト内でimageURLとして渡し、Zoho Writer の Deluge タスクまたはZoho Writer の APIを使用して出力処理を実行します。
以下は、Zoho Writer の API を使用してドキュメントをマージし、メールで送信するための Deluge コードのサンプルです。
data= map();
data.put('employee_name',employeerecord.Employee_Name);
data.put ('employee_email', employeerecord.Employee_email);
data.put('project_name', employeerecord.Project_Name);
data.put('date',employeerecord.Date_field);
data.put('total_hours_worked', employeerecord.Total_Hours_Worked);
data.put('timer_screenshot', imageURL);
data.put('task_details', employeerecord.Task_Details);
data.put('date', employeerecord.Subform_Date);
data.put('hours_worked', employeerecord.Hours_worked);
data.put('task_description', employeerecord.Task_Description);
param = Map();
param.put('message', '過去 1 週間の作業内容をご確認ください');
param.put('subject', '作業内容');
param.put('merge_data', {'data':data});
param.put('output_format', 'inline');
param.put('recipient_email',employeerecord.Employee_email);
param.put('from_email', 'paxyz@zylker.com');
invokeurl
[
url: 'https://zohoapis.com/writer/api/v1/documents/eb4kob******/merge/email'
type: post
parameters: param
connection: ''
];