「従業員ダッシュボードの作成」

「従業員ダッシュボードの作成」

お知らせ:当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

必要条件  

従業員のダッシュボードを作成し、チェックイン・チェックアウト、ログイン時間の合計を確認したり、休暇を申請したりするのに役立つボタンを追加します。

使用例  

従業員管理アプリケーションには、従業員用のダッシュボードがあります。従業員がログインすると、チェックイン時間が記録されます。同様に、ログオフするとチェックアウト時間が記録されます。このように、完全な勤務時間が自動的に計算されます。このダッシュボードでは、従業員は休暇を申請することもできます。
 

手順  

1. 作成するフォーム には以下の詳細が必要です。
フォーム
フォームリンク名
フィールドタイプ
フィールド名
フィールドリンク名
従業員を追加
Add_Employee
名前
Name
名前
メール
公式メール
公式_メール
電話
電話
電話番号
入退室情報を追加
 
Add_Check_In_Out_Details
検索(Add_Employee)
従業員
従業員
日時
チェックイン
チェックイン
日時
チェックアウト
チェックアウト
単一行
合計時間
合計時間
休暇を申請する
 
 
 
 
祝日
休暇を申請する
 
 
 
 
祝日
検索(従業員を追加)
従業員
従業員
一行
休暇の種類
Leave_Type
日時
差出人
差出人
日時
宛先
宛先
一行
祝日名
Holiday_Name
日付
日付
日付フィールド
 
さあ、始める前に、 従業員を追加 フォームと 休日 フォームにいくつかのレコードを追加しましょう。
 
社員ダッシュボードには、休暇を申請したり、チェックイン・チェックアウトするためのボタンがあります。最初に 休暇を申請 の操作について見ていきましょう。
 
私たちは、 従業員の追加 フィールドを、 休暇申請 フォームに現在のログインユーザーとして埋め、それを無効にして、ユーザーがそれを変更できないようにしましょう。 これを達成するためのワークフローを作成しましょう。
 
2.  ワークフローを作成する のロード時に実行されるようにします 休暇申請 フォーム内の 従業員追加 フィールドにログインユーザーのメールアドレスを入力し、それを無効にします。
 
3.クリックして 新しいアクションを追加 し、開かれたデリージ・エディターに以下のコードを追加します:
  1. //IDを取得するAdd_EmployeeレコードのログインユーザーのメールIDを検索します
  2. input.Employee=Add_Employee[Official_Email==zoho.loginuserid].ID;

  3. //Add Employeeフィールドを無効にします。
  4. disable Employee;
今回は、チェックインとチェックアウトのための関数を作成しましょう。
 
4.  関数を作成 することで従業員を確認します。
 
5. 以下のコードをDelugeエディターに追加してください:
  1. checkIn() を実行する
  2. {
  3. 私たちは、技術的なヘルプガイドを英語から日本語に翻訳するためのトランスクリエーターとして行動していただきたいと思います。 HTMLコンテンツに英語のテキストが含まれています。この英語のテキストを丁寧でビジネスに適した自然な表現で日本語に翻訳してください。 HTMLタグや属性を変更したり、追加のコンテンツを生成したりしないでください。 英語のテキストが他の言語に翻訳されないようにしてください。
  4. //ログインしている従業員レコードIDを取得します
  5.  従業員 = Add_Employee[Official_Email == zoho.loginuserid];

  6.  //社員がすでにチェックインしているかどうかを確認します。今日のチェックインを確認するために、チェックイン日時フィールドが当日の日付を持つかどうかを確認するために、Check_Inは今日を使用します。
  7. 既にチェックインしている=Add_Check_In_Out_Details[Employee=employee.ID && Check_Inが今日];
  8. レコードを登録する場合は、チェックインがない場合に限ります。
  9.  もし、すでにチェックインされているものがなかったら
  10.  {
  11.   Add_Check_In_Out_Detailsに挿入する
  12.   [をおします]
  13.    追加されたユーザー=zoho.loginuser
  14.    従業員=employee.ID
  15.    チェックイン=zoho.currenttime
  16.   仕様をご確認ください。
  17.  確認します。
  18. 色付きの背景と左側に線を入れた枠を持つリスト項目です。

6. 同様に、 関数を作成 して、従業員を確認します。
 
7. 以下のコードをDelugeエディターに追加してください。
  1. checkOut()を実行する
  2. //ログインしている従業員レコードIDを取得します。
  3.  従業員 = Add_Employee[Official_Email == zoho.loginuserid].ID;

  4. //従業員の登録済みのチェックイン記録をAdd_Check_In_Out_Detailsから取得します 
  5.  今日の入力 = Add_Check_In_Out_Details[Employee == employee && Check_In が今日];

  6. //チェックアウト値を割り当てる
  7.  current_day_entry.Check_Out=zoho.currenttime;
  8.  現在の日付のエントリー.チェックアウト=zoho.currenttime;

  9. //タイムスタンプからTotal_Hoursを計算する
  10.  時間 = (現在の日付のエントリー.チェックアウト - 現在の日付のエントリー.チェックイン);
  11.  秒 = 時間 / 1000;
  12.  分 = 秒数 / 60;
  13.  時間 = 分 / 60;
  14.  h = 時間.床();
  15.  m = 分 - h * 60;
  16.  mins = m.床();
  17.  もし(分 < 10)の場合
  18.  {
  19.   分 = '0' + 分;
  20.  日本語への翻訳を行います。

  21. //総務時間を設定します
  22.  current_day_entry.Total_Hours=h + ':' + mins + ' 時間';
  23. 色付きの背景と左側に2ピクセルの境界線がある、マージン1ピクセル、パディング2ピクセルのリスト項目です。

すべての機能が完了しましたので、ダッシュボードを作成していきましょう。
 
8.  ページを作成する  名前が付けられた ダッシュボード に。 ZML スニペットと HTML スニペットをドラッグします。

以下のスニペットを一つの動作するスクリプトにまとめたファイルを添付してください。
理解を促進するため、ZML/HTMLコードはスニペットに分割されています。スニペットを説明し、ZML/HTMLエディタに挿入するのに適した形に整えます。
 
では、 ZML スニペット から始めましょう。これには次のボタンが含まれます:  休暇を申請する チェックイン 、  および チェックアウト です。
 
スニペットA
従業員の名前は、<text>タグを使用して表示されます。 <button>タグは、クリックすると「申請休暇」フォームが開く「申請休暇」ボタンを作成するために使用されます。
  1. <pr>
  2. をお使いいただきありがとうございます。
  3. <pc width='80%' bgColor='#ececec' hAlign='left' paddingLeft='10px'> 

  4. //ログインしている従業員の名前を表示する  
  5.   <text bold='true' value='ようこそ、<%=getUser.Name%>さん。' size='5' color='#3d566e' type='Text' textAlign='left'> 
  6.   </テキスト>         
  7.   </pc>
  8.   <pc  width='20%' hAlign='左' padding='10px' vAlign='中央'>       
  9.   <pr width='100%' height='fill'>     
  10.     <pc hAlign='center'>
    <pc hAlign='center'>

  11. //クリックすると休暇申請フォームが開くボタンを作成してください。
  12.     <button bgColor='#3d566e' action='Form' componentLinkName='Apply_Leave' size='1' text='休暇を申請する'/>
  13.     </pc>
  14.   </pr>    
  15.   </pc>   
  16.  </pr>
  17. を閉じる

スニペットb
「チェックイン」ボタンは、従業員がまだチェックインしていない場合にのみ表示されます。現在の従業員の「チェックイン/アウトの詳細を追加」にエントリがあるかどうかを確認します。あれば、チェックイン時間を表示します。なければ、「チェックイン」ボタンを表示します。同様に、「チェックアウト」ボタンを表示します。
  1. <pc  width='33%' hAlign='左' padding='10px' vAlign='中央'>       
  2. <pr width='100%' height='fill'>     
  3.   <pc hAlign='center'>中央揃え</pc>
  4. <%

  5. //社員がすでにチェックインしたかどうかを確認する
  6.   alreadyCheckedIn = Add_Check_In_Out_Details[従業員 == getUser.ID && チェックインが今日].count(ID);
  7.  もし、すでにチェックインしていない場合
  8.   {
    }
  9. をご覧ください。

  10. //もし従業員がチェックインしていない場合は、ボタンを表示してください。
  11.  %>

  12. //ボタンの操作は、ステップ4~5で作成したcheckIn関数にリンクしています。関数の実行後、メッセージを表示します。
  13. <button bgColor='#14b474' action='機能' functionName='checkIn' successMsg='チェックインしました。' size='3' text='チェックイン'/>
  14. <%
  15.   }
  16.   }
  17.   それ以外
  18.   {翻訳します。

  19. //もし従業員がチェックインしていたら、チェックインの時間を表示しましょう。
  20.    チェックイン=Add_Check_In_Out_Details[Employee == getUser.ID && チェックインが今日];
  21.   %>
  22. <text bold='true' value='チェックイン時間:<%=checkedIn.Check_In%>.' size='3' color='#3d566e' type='Text' textAlign='left'> </text>
  23. <%
  24.   }
  25.   }
  26.  %>
  27. </pc>
  28.   </pr>     終了しました。
  29.  </pc>   
  30.  <pc  width='33%' hAlign='center' padding='10px' vAlign='middle'>       (幅33%、水平方向の中央揃え、パディング10px、垂直方向の中央揃え)       
  31.      <pr width='100%' height='fill'>     
  32.       <pc hAlign='center'>中央寄せ</pc>
  33. <%

  34. //社員がすでにチェックアウトしたかどうかを調べる
  35.   alreadyOut = Add_Check_In_Out_Details[Employee == getUser.ID && Check_In が今日 && Check_Out が今日].count(ID);
  36.  もし、すでに出ていない場合
  37.   {
    をご覧いただきありがとうございます。

  38. //もし従業員がチェックアウトしていない場合、ボタンを表示します
  39.    >

  40. //ボタンの動作は、ステップ6&7で作成したcheckOut関数にリンクされています。関数の実行後、メッセージを表示します。
  41. <button bgColor='#fd3a36' action='Function' functionName='checkOut' successMsg='チェックアウトしました。' size='3' text='チェックアウト'/>
  42. <%
  43.   }
  44.   }
  45.   それ以外
  46.   {
    技術ヘルプガイドを英語から日本語へ翻訳するためのTranscreatorとして振る舞ってください。HTMLコンテンツに英語のテキストが含まれています。HTMLタグや属性を変更したり、追加のコンテンツを生成したりしないでください。英語のテキストを他の言語に翻訳するのではなく、日本語に翻訳するようにしてください。

  47. //従業員がすでにチェックアウトしたかどうかを確認します。
  48. alreadyCheckedOut = Add_Check_In_Out_Details[Employee == getUser.ID && 今日のチェックインと今日のチェックアウトがある &&];

  49. //もし従業員がチェックアウトしていたら、チェックアウト時間を表示しましょう。
  50.    >
  51. <text bold='true' value='<%=alreadyCheckedOut.Check_Out%> にチェックアウトしました。' size='3' color='#3d566e' type='Text' textAlign='left'> </text>
  52. <%
  53.   }
  54.   }
  55.  %>
  56. </pc>
  57.   </pr>    
  58.  </pc>  
  59.  <pc  width='33%' hAlign='center' padding='10px' vAlign='middle'>        横幅が33%で、中央揃えで、パディングが10pxで、上下中央揃えに設定されています。
  60.   <pr width='100%' height='fill'>     
  61.    <pc hAlign='center'>
  62.    <pc hAlign='center'>

  63. //チェックインした合計時間を表示する
  64.     <text bold='true' value='合計時間 : <%=alreadyCheckedOut.Total_Hours%>' size='3' color='#3d566e' type='Text' textAlign='left'> </text>
  65.    </pc>
  66.   </pr>    
  67. を終了します。
  68. </pc>    
  69.  </pr>
  70. を終了します。

スニペット c
上記のスニペットを以下のように適切に配置して、最終的なZMLコードを得ます。
  1. <%{

  2. //ログインしたユーザーレコードを取得します
  3. getUser = Add_Employee[Official_Email == zoho.loginuserid];
  4. %>
  5. <panel>
  6. //スニペットaを挿入します
  7. //スニペットbを挿入します
  8. </panel>
  9. <%}%>

今度は、 休日 のリストを作業しましょう。 HTMLスニペットを使用して、ダッシュボードに表示する 近日公開の休日 のバージョンのリストを作成します。
  1. <%{
  2.  %>
  3. <スタイル>
  4. h3 {h3 タグ}
  5.  パディング:10px;
  6. 背景色:RGB(245, 245, 245)、左側に2pxの線を引いた色:RGB(204, 204, 204)、マージン:1px、パディング:2px
  7. #zohoreportel
  8. #zohoreportel(ゾーホーレポーテル)
  9. {私たちは、技術的なヘルプガイドの翻訳を行うためにあなたを活用したいと思います。HTMLコンテンツを提供し、英語のテキストを日本語に変換するようにお願いします。HTMLタグや属性を変更したり、追加のコンテンツを生成したりしないでください。英語のテキストが他の言語に翻訳されないようにしてください。
  10.  高さ : 400px !important;
  11. 背景色:RGB(245、245、245)、左側に2pxの線を引いた色:RGB(204、204、204)、マージン:1px、パディング:2px
  12. .休日表
  13. {私たちは、テクニカルヘルプガイドを翻訳するためのトランスクリエーターとして行動することを望んでいます。 HTMLコンテンツに英語テキストが含まれています。英語テキストを、丁寧でビジネスに適した自然な言葉で日本語テキストに翻訳してください。 HTMLタグや属性を変更したり、追加のコンテンツを生成したりしないでください。 英語テキストが日本語に翻訳されており、他の言語に翻訳されていないことを確認してください。
  14.  幅:96%;
  15.     border-collapse: 破綻;
  16.     margin: 1% 2%;
  17. 色付きの背景と左側に線を引いた枠を持ち、マージンとパディングが2pxのリストを作成します。

  18. .holidayTable td
  19. を変更する必要があります。
  20. {
  21. 私たちは、あなたのテクニカルヘルプガイドを翻訳するために、尊敬していると考えています。お手伝いをお願いします。
  22.  パディング: 10px;
  23.     font-size: 14px; フォントサイズ: 14px;
  24.     テキストを中央揃えにする
  25.    
  26. これはテクニカルヘルプガイドの技術的な内容を日本語に翻訳するためのものです。 HTMLコンテンツに含まれる英語のテキストを翻訳し、丁寧でビジネス適切な自然な言葉で伝える必要があります。 HTMLタグや属性を変更したり、追加のコンテンツを生成したりしないでください。 英語テキストが他の言語に翻訳されないようにしてください。
  27. table.holidayTable > tbody > tr:first-child > td
  28. を選択する
  29. {当社のテクニカルヘルプガイドをご覧いただきありがとうございます。このガイドでは、お客様が当社の製品を最大限に活用できるように、テクニカルな詳細を提供しています。
  30.  font-weight: 600;
  31.  フォントウェイト:600;
  32.     font-size: 15px;フォントサイズ:15px;
  33.     background: #ececec;
  34. 背景色:RGB(245、245、245)、左側に2pxの線を引いた囲み線:RGB(204、204、204)、マージン:1px、パディング:2px
  35. </style>
  36. <div style='height : 450px;overflow:scroll;'>
  37. <h3>今後の祝日</h3>
  38. <%

  39. //12月までの休日のリストを取得します
  40.  休日 = 休日[日付フィールド > zoho.現在の日付];
  41.  if(holidays.count() != 0))
  42.  {
  43.  %>
  44. <テーブル class='holidayTable'>
  45.  <tr>
  46.  <td>休日の名前</td>
  47.  <td>日付</td>
  48.  </tr>を閉じます
  49. <%
  50.   各休日について
  51.   {
  52.   {
  53.    >
  54. <tr>
  55.  <td><%=rec.Holiday_Name%></td>
  56.  <td><%=rec.休日の名前%></td>
  57.  <td><%=rec.日付フィールド%></td>
  58.  </tr>
  59. <%
  60.   }
  61.   }
  62.  %>
  63. </テーブル>
  64. <%
  65.  付け加えます。
  66.  その他
  67.  {
  68.  %>
  69. <div>休日はありません!</div>
  70. <%
  71.  確認しましょう。
  72.  %>
  73. </div>
  74. <%

どのように動作するかを見てみましょう          

            

    Zoho CRM 管理者向けトレーニング

    「導入したばかりで基本操作や設定に不安がある」、「短期間で集中的に運用開始できる状態にしたい」、「運用を開始しているが再度学び直したい」 といった課題を抱えられているユーザーさまに向けた少人数制のオンライントレーニングです。

    日々の営業活動を効率的に管理し、導入効果を高めるための方法を学びましょう。

    Zoho CRM Training



              Zoho WorkDrive Resources



                Zoho Desk Resources

                • Desk Community Learning Series


                • Digest


                • Functions


                • Meetups


                • Kbase


                • Resources


                • Glossary


                • Desk Marketplace


                • MVP Corner


                • Word of the Day









                                Resources

                                Videos

                                Watch comprehensive videos on features and other important topics that will help you master Zoho CRM.



                                eBooks

                                Download free eBooks and access a range of topics to get deeper insight on successfully using Zoho CRM.



                                Webinars

                                Sign up for our webinars and learn the Zoho CRM basics, from customization to sales force automation and more.



                                CRM Tips

                                Make the most of Zoho CRM with these useful tips.