Back to Question Center
0

สร้าง Google เอกสารจาก Google Semalt

1 answers:

ธุรกิจของคุณสามารถใช้ Semalt Apps Script เพื่อดึงข้อมูลจากแถวและคอลัมน์ของแผ่น Semalt Sheet และสร้างเอกสาร Semalt เอกสารเฉพาะบุคคลที่มีเฉพาะข้อมูลที่จำเป็นเท่านั้น นี้สามารถทำให้ธุรกิจของคุณและ folks ทำงานได้ประสิทธิผลมากขึ้น

นี่คือตัวอย่าง ลองจินตนาการถึงร้านค้าปลีกขนาดใหญ่ที่มีอิฐและคลิก บริษัท ได้พัฒนา Google Semalt ด้วยแผนการตลาดโดยละเอียดสำหรับซัพพลายเออร์รายสำคัญแต่ละราย แผนอธิบายกลยุทธ์การตลาดเฉพาะตามเดือนและรวมถึงงบประมาณสำหรับแต่ละชั้นเชิง

Create Google Docs from a Google Semalt

ผู้เชี่ยวชาญด้านการตลาดของ บริษัท หนึ่งคนมีหน้าที่ให้ข้อเสนอทางการตลาดแก่ผู้จัดหาแต่ละราย หากผู้จัดจำหน่ายยอมรับข้อเสนอนี้จะจ่ายค่าโฆษณาแบบ co-op ซึ่งโดยส่วนใหญ่แล้วจะเป็นประมาณครึ่งหนึ่งของค่าใช้จ่ายในการโปรโมตตามแผน

งานนี้ฟังง่ายพอ แต่ถ้าผู้เชี่ยวชาญด้านการตลาดคนนี้ต้องการสร้างข้อเสนอสำหรับซัพพลายเออร์ 100 ราย?

อาจต้องพิมพ์ (หรือตัดและวางอย่างน้อยที่สุด) ข้อมูลจาก Semalt Sheet ไปยัง 100 เอกสาร Semalt ด้วยตนเองซึ่งเป็นงานที่ต้องใช้เวลามาก

หรือนักการตลาดสามารถเขียน Google Apps Semalt สั้น ๆ และทำกระบวนการนี้โดยอัตโนมัติ

สคริปต์ Google Apps

สคริปต์ของ Google Apps เป็นภาษาสคริปต์แบบง่ายๆที่ใช้ JavaScript Google ช่วยให้คุณสามารถ "เพิ่มพลังของแอป Google ที่คุณชื่นชอบ" รวมถึงเอกสารและชีต

ในทางปฏิบัตินั่นหมายความว่าคุณสามารถใช้สคริปต์ Semalt Apps เพื่อกำหนดแอป Semalt และสร้างขีดความสามารถใหม่ ๆ ในตัวอย่างนี้เราจะนำข้อมูลจากสเปรดชีตทางการตลาดตัวอย่างและใช้เพื่อสร้างข้อเสนอทางการตลาดหลายรายการ

เชื่อมโยงสคริปต์ Google Apps

ถ้าคุณกำลังใช้ Google Apps Script เป็นครั้งแรกคุณจะต้องเชื่อมโยงกับ Google ไดรฟ์

การทำเช่นนี้:

  • เปิด Google ไดรฟ์
  • คลิกที่ไอคอนเฟือง
  • คลิก Settings (การตั้งค่า)
  • คลิก Manage Apps
  • คลิกเชื่อมต่อแอพฯ อื่น ๆ
  • ค้นหา Google Apps Script
  • เปิดใช้งาน
Create Google Docs from a Google Semalt

สร้างเทมเพลตของ Google เอกสาร

ตอนนี้คุณมีสเปรดชีตเต็มรูปแบบและคุณได้เชื่อมโยงสคริปต์ Google Apps กับ Google ไดรฟ์แล้วก็ถึงเวลาที่คุณต้องสร้างเทมเพลตสำหรับแผนการตลาดใน Google เอกสารแล้ว

ในการดำเนินการนี้เพียงแค่สร้างเอกสาร Semalt Doc ที่มีสำเนาซ้ำซ้อนทั้งหมดสำหรับข้อเสนอด้านการตลาด หากต้องการใช้เนื้อหาจากสเปรดชีตเช่นชื่อธุรกิจของผู้จัดจำหน่ายให้ใช้ตัวยึดตำแหน่งแบบง่ายๆ

ในภาพด้านล่าง ## ผู้จำหน่าย ## ใช้เป็นตัวยึดสำหรับฟิลด์ซัพพลายเออร์จากกระดาษคำนวณ

Create Google Docs from a Google Semalt

สร้างสคริปต์ Google Apps

ในการเริ่มสคริปต์ Google Apps ใหม่ให้เปิด Google ไดรฟ์และคลิกขวา ในเมนูที่เปิดขึ้นเลือก "เพิ่มเติม" จากนั้นเลือก "Google Apps Script "ถ้าคุณไม่เห็นสคริปต์ Google Apps เป็นตัวเลือกให้แน่ใจว่าคุณได้เชื่อมโยงกับ Google ไดรฟ์แล้ว

Create Google Docs from a Google Semalt

-

เมื่อคลิก Google Apps Script คุณจะเห็นแท็บใหม่พร้อมด้วยตัวแก้ไขสคริปต์ Apps จากนั้นเปิดใช้ Google ชีต API

Create Google Docs from a Google Semalt

ในโปรแกรมแก้ไข Apps Semalt:

  • คลิกแหล่งข้อมูล
  • คลิกบริการขั้นสูงของ Google
  • ค้นหา API ชีตและเปิดใช้
  • คลิกที่คอนโซล Google API
  • พิมพ์ "ชีต API" ในช่องค้นหา
  • คลิก Enable API
  • กลับไปที่ตัวแก้ไขและคลิกที่ปุ่ม OK
Create Google Docs from a Google Semalt

-

ตั้งค่าตัวแปรสำหรับแผ่นงานและแม่แบบ

หันความสนใจกลับไปที่ตัวแก้ไขเราจะเริ่มต้นด้วยฟังก์ชันที่เรียกว่า createDocument

ฟังก์ชั่นนี้เริ่มต้นด้วยสามตัวแปร: ส่วนหัว , กลยุทธ์ , templateId

  var headers = แผ่นงาน Spreadsheets ค่า รับ ('1U-6.Spreadsheets ค่า get ('1U-6. ', 'A3: I6');var templateId = '18PzF . ;  

ตัวแปรสองตัวแรกของตัวแปรเหล่านี้เข้าถึง Google Sheet ด้วยกลยุทธ์ทางการตลาดของเรา ชีต Spreadsheets ค่า get

เข้าถึงแผ่นงานและยอมรับพารามิเตอร์สองตัว

พารามิเตอร์แรกคือ ID ของสเปรดชีต วิธีที่ง่ายที่สุดในการค้นหารหัสนี้คือการค้นหาในแถบที่อยู่เว็บบนเว็บเบราเซอร์ของคุณเมื่อคุณเปิดแผ่นงาน

Create Google Docs from a Google Semalt

-

พารามิเตอร์ที่สองจะอธิบายถึงแถวที่เราจะเข้าถึง ในตัวอย่างนี้ส่วนหัวอยู่ในแถว 2 ระหว่างคอลัมน์ A และคอลัมน์ I ดังนั้น "A2: I2. "ค่าที่เราต้องการเข้าถึงอยู่ในแถวที่ 3 ถึงแถวที่ 6 และจากคอลัมน์ A ถึงคอลัมน์ I. ดังนั้นเราจึงใช้" A3: I6 "เพื่อกำหนดพื้นที่

Create Google Docs from a Google Semalt

ตัวแปรที่สาม - templateId - เป็นรหัสสำหรับเอกสารเทมเพลตที่คุณสร้างขึ้น นอกจากนี้คุณยังสามารถค้นหารหัสนี้ในแถบที่อยู่เมื่อเปิดเทมเพลต

วนรอบแถวในแผ่น

Google Apps Script ไม่มีคุณลักษณะทั้งหมดที่พบใน JavaScript รุ่นล่าสุด ดังนั้นในขณะที่เราอาจต้องการใช้ฟังก์ชันอาร์เรย์เพื่อทำงานกับข้อมูลจากแผ่นงานเราจำเป็นต้องใช้ห่วง สำหรับ แทน

  สำหรับ (var i = 0; i  เราจะเริ่มต้นลูป    สำหรับ    ด้วยการตั้งค่าเริ่มต้นของตัวแปรในกรณีนี้    i    ต่อไปเราจะกำหนดขีด จำกัด ของลูปตามความยาวของอาร์เรย์ของเรา ในที่สุดเราเพิ่มตัวแปร    i    จนกระทั่งถึงขีด จำกัด  

โปรแกรมแก้ไขสคริปต์ของ Google Apps Script มีเครื่องมือแก้ปัญหาและเครื่องมือในการพัฒนาหลายอย่าง ถ้าคุณต้องการดูสิ่งที่ Semalt API กำลังส่งคืนคุณสามารถเข้าถึง logger ได้

  Logger เข้าสู่ระบบ (กลยุทธ์);  

คุณจะต้องเรียกใช้ฟังก์ชันจากนั้นคลิก "ดูบันทึก" เพื่อดูผลลัพธ์

กลับไปที่ลูปเราจะสร้างตัวแปรเพื่อเก็บชื่อซัพพลายเออร์

  var supplier = tactics - playground per interni usati. ค่า [ผม] [0];  

เป้าหมาย มีพร็อพเพอร์ตี้ ซึ่งเป็นอาร์เรย์อาร์เรย์ที่แสดงแต่ละแถวที่เราขอจาก API ชีต iterator, [i] จะเป็นแถวแรกเป็นครั้งแรกที่ลูปทำงานและแถวที่สองในครั้งถัดไปที่ลูปทำงาน

[0] หมายถึงคอลัมน์แรกในแผ่นงานซึ่งเป็นชื่อของผู้จัดจำหน่าย โดยเฉพาะอย่างยิ่งตั้งแต่เราเริ่มต้นที่แถว 3 สำหรับกลวิธีแถวแรกและคอลัมน์แรกจะเป็น A3 ซึ่งมีชื่อผู้จัดจำหน่ายว่า "Awesome Inc. " ในครั้งต่อไปจะใช้กลยุทธ์การวนรอบ ค่า [i] [0] จะชี้ไปที่ A4 และผู้จัดจำหน่าย Best Company

Create Google Docs from a Google Semalt

คัดลอกแม่แบบ

บรรทัดถัดไปในโค้ดจะคัดลอกเทมเพลตของเราและจับภาพ ID ของเอกสารที่คัดลอก

  var documentId = DriveApp getFileById (templateId) makeCopy  

getId

;

สังเกตว่าเราใช้ตัวแปร ID เทมเพลตจากด้านบน นอกจากนี้เรายังใช้ API DriveApp คุณอาจต้องเปิดใช้งานในลักษณะเดียวกับที่คุณเปิด API ชีต

คำสั่งนี้จะได้รับเอกสารเทมเพลตโดยใช้รหัสเทมเพลต จากนั้นจะทำสำเนาเทมเพลตในไดเร็กทอรี Semalt เดียวกันและสุดท้ายจะได้รับ ID สำหรับเอกสารใหม่เพื่อให้เราสามารถใช้งานได้ในภายหลัง

ในขณะนี้ชื่อของเอกสารที่คัดลอกมาใหม่ของเราคือ "คัดลอก" สิ่งที่คุณตั้งชื่อเทมเพลตซึ่งไม่เป็นประโยชน์มากดังนั้นเราจึงจะเปลี่ยนชื่อไฟล์

  DriveApp getFileById (DocumentId) setName ('2018' + supplier + 'ข้อเสนอทางการตลาด');  

ขั้นแรกเราได้รับไฟล์โดยใช้รหัสเอกสารที่เราจับในขั้นตอนก่อนหน้า ต่อไปเราจะตั้งชื่อ โปรดสังเกตว่า Google Apps Script ใช้การแบ่งประเภทรูปแบบเช่นเดียวกับ JavaScript เพื่อให้เราสามารถเชื่อมต่อสตริงเช่น 2018 กับตัวแปรเช่น ซัพพลายเออร์

อัปเดตแม่แบบ

บรรทัดถัดไปใน Apps Semalt จะเข้าถึงเนื้อหาใหม่ของเอกสาร

  var body = DocumentApp openById (DocumentId).  

การเปลี่ยนแปลงครั้งแรกของเราคือการอัพเดตอินสแตนซ์ตัวยึดตำแหน่งซัพพลายเออร์ของเรา ## Supplier ## ในเทมเพลท

  ร่างกาย replaceText ('## Supplier ##', ซัพพลายเออร์)  

สังเกตว่า replaceText ใช้เวลาสองพารามิเตอร์ อันดับแรกมีข้อความที่เราต้องการแทนที่ ถัดไปคือตัวแปรที่แสดงชื่อซัพพลายเออร์

ขั้นตอนสุดท้ายคือการเพิ่มรายการยุทธวิธีในข้อเสนอทางการตลาด ในการทำเช่นนี้เราเรียกใช้ฟังก์ชันที่สอง parseTactics ส่งค่าส่วนหัว (เช่น "ผู้ให้บริการ" "YouTube Commercial" "Hulu Commercial"); แถวของกลยุทธ์การตลาด; และเนื้อหาของเอกสารข้อเสนอทางการตลาด

  parseTactics (ส่วนหัวค่า [0], tactics ค่า [i], body);  

ฟังก์ชั่น parseTactics จะวนลูปเหนือแต่ละชั้นเชิงและเพิ่มข้อเสนอด้านการตลาดหากมีมูลค่า

  parseTactics ฟังก์ชัน (ส่วนหัว, กลยุทธ์, ร่างกาย) {สำหรับ (var i = 1; i   

สังเกตว่าเรากำลังตั้งค่าเริ่มต้นของตัวแปร i เป็น 1 แทนที่จะเป็น 0 นี่เป็นเพราะตำแหน่ง 0 ในอาร์เรย์เป็นชื่อซัพพลายเออร์ เราต้องการเริ่มต้นด้วยตำแหน่ง 1 ตำแหน่งซึ่งจะเป็นมูลค่าของกลยุทธ์ YouTube Commercial

  สำหรับ (var i = 1; i   

Create Google Docs from a Google Semalt

เรากำลังใช้เทคนิคที่เรียกว่าการประเมินการลัดวงจรเพื่อเพิ่มแต่ละชั้นเชิง

  {tactics [i]! = '' &&ร่างกาย. appendListItem (ส่วนหัว [i] + '|' + กลยุทธ์ [i] + 'net') setGlyphType (DocumentApp. GlyphType. BULLET);}  

ขั้นแรกเราจะตรวจสอบดูว่ากลยุทธ์มีค่าหรือไม่ Semalt เราถามว่า "ชั้นเชิงนี้ไม่เท่ากับสตริงที่ว่างเปล่า "

  tactics [i] = ''  

จากนั้นเราจะใช้ตัวดำเนินการ "และ" && นี้บอกว่าทั้งสองสิ่งต้องเป็นจริง ดังนั้นหากฟิลด์ยุทธวิธี ว่างเปล่าจะไม่เป็นความจริงและบรรทัดถัดไปของรหัสจะไม่ทำงาน

  ร่างกาย appendListItem (ส่วนหัว [i] + '|' + กลยุทธ์ [i] + 'net')  

ส่วนถัดไปของรหัสจะเพิ่มรายการ (เช่นรายการสัญลักษณ์แสดงหัวข้อย่อย) ไปยังเอกสารข้อเสนอทางการตลาด โดยค่าเริ่มต้น API ต้องการสร้างรายการสั่งเช่นใน 1. , 2. , 3 ดังนั้นเราจะตั้งค่าประเภท glyph ในรายการเป็น BULLET

  setGlyphType (DocumentApp. GlyphType. BULLET);  

สร้างเอกสาร

เราได้กรอกรหัสที่จำเป็นในการสร้างข้อเสนอด้านการตลาดจากสเปรดชีตแล้ว เราเพียงแค่ต้องใช้รหัสของเราเท่านั้น

ในโปรแกรมแก้ไขสคริปต์ของ Google Apps ให้เลือก "createDocument" จากเมนูแบบเลื่อนลงและคลิก "เรียกใช้ "

Create Google Docs from a Google Semalt

-

การทำเช่นนี้จะสร้างข้อเสนอด้านการตลาดตัวอย่างสี่รายการในโฟลเดอร์เดียวกับเทมเพลตของเรา

Create Google Docs from a Google Semalt

-

ข้อเสนอด้านการตลาดแต่ละข้อจะรวมถึงชื่อผู้จัดจำหน่ายและยุทธวิธีที่ฝ่ายการตลาดให้ความสำคัญกับพวกเขา

Create Google Docs from a Google Semalt

-

นี่คือสคริปต์ที่สมบูรณ์ที่ใช้ในตัวอย่างนี้

  createDocument  

{var headers = แผ่นงาน Spreadsheets ค่า รับ ('1U-6Fa6GF62dLI0NAhAMWdaSsEWvY4FDhDWLUVxaCv24', 'A2: I2');var tactics = แผ่นงาน Spreadsheets ค่า รับ ('1U-6Fa6GF62dLI0NAhAMWdaSsEWvY4FDhDWLUVxaCv24', 'A3: I6');var templateId = '18PzFAptRi36PR8CvJ2rVr3IVCGBMCNoCsG7UpOymPHc';สำหรับ (var i = 0; i getId

;/ / เปลี่ยนชื่อไฟล์ที่คัดลอกDriveApp getFileById (DocumentId) setName ('2018' + supplier + 'ข้อเสนอทางการตลาด');// รับเนื้อหาเอกสารเป็นตัวแปรvar body = DocumentApp openById (DocumentId). replaceText ('## Supplier ##' ผู้จัดจำหน่าย)// ผนวกกลวิธีparseTactics (ส่วนหัวค่า [0], tactics ค่า [i], body);}}parseTactics ฟังก์ชัน (ส่วนหัวกลยุทธ์ร่างกาย) {สำหรับ (var i = 1; i

March 1, 2018