Google Apps Komut Dosyası, Google Dokümanlar'ı programlı bir şekilde oluşturmanıza ve Ayrıca kullanıcı arayüzünü yeni menüler, iletişim kutuları kenar çubukları.
Temel bilgiler
Apps Komut Dosyası, Google Dokümanlar ile iki genel şekilde etkileşim kurabilir: herhangi bir komut dosyası komut dosyasının kullanıcısı ilgili doküman için uygun izinlere sahipse bir doküman oluşturabilir veya dokümanı değiştirebilirsiniz. bir komut dosyası da bağlıdır. Bu işlem, kullanıcı arayüzünü değiştirmek veya dokümanı açar. Google Dokümanlar'dan kapsayıcıya bağlı bir komut dosyası oluşturmak için Uzantılar > Apps Komut Dosyası'nı tıklayın.
Her iki durumda da, Apps Komut Dosyası'nın içinden bir Google Dokümanı ile etkileşimde bulunmak kolaydır. Document Service (Belge Hizmeti) gösteriyor.
function createDoc() { var doc = DocumentApp.create('Sample Document'); var body = doc.getBody(); var rowsData = [['Plants', 'Animals'], ['Ficus', 'Goat'], ['Basil', 'Cat'], ['Moss', 'Frog']]; body.insertParagraph(0, doc.getName()) .setHeading(DocumentApp.ParagraphHeading.HEADING1); table = body.appendTable(rowsData); table.getRow(0).editAsText().setBold(true); }
Yukarıdaki komut dosyası, kullanıcının Google Drive'ında yeni bir doküman oluşturur ve ardından
dokümanın adı ile aynı metni içeren paragrafları,
paragrafını başlık olarak ekler ve
dizi örneğidir. Komut dosyası bu değişiklikleri bir
mevcut dokümandaki
DocumentApp.create()
DocumentApp.openById()
ile
veya openByUrl()
.
Bir doküman içinde oluşturulan komut dosyaları (kapsayıcıya bağlı) için
DocumentApp.getActiveDocument()
.
Bir belgenin yapısı
Apps Komut Dosyası açısından bakıldığında, bir Google Dokümanı HTML gibi yapılandırılmıştır.
dokümandır; yani bir Google Dokümanı, bir doküman gibi
Paragraph
veya
Table
) gibi,
öğeler. Bir Google Dokümanını değiştiren çoğu komut dosyası,
getBody()
, çünkü
Body
, şu özelliklere sahip bir ana öğedir:
şunlar dışındaki tüm diğer öğeleri içerir:
HeaderSection
,
FooterSection
ve herhangi bir
Footnotes
.
Ancak hangi öğe türlerinin diğer türleri içerebileceğiyle ilgili kurallar vardır. Ayrıca, Apps Komut Dosyası'ndaki Belge Hizmeti yalnızca belirli türleri oluşturuyoruz. Aşağıdaki ağaç, belirli bir öğede hangi öğelerin türünden emin olun.
Kalın yazı tipiyle gösterilen öğeler eklenebilir. kalın olmayan öğeler yalnızca manipüle edilmiş olmalıdır.
- Belge
-
'nı inceleyin.
- Gövde
- HeaderSection
-
'nı inceleyin.
- ListItem
- HorizontalRule
- InlineDrawing
- InlineImage
- Metin
- UnsupportedElement (sayfa numarası vb.)
- Paragraf
- HorizontalRule
- InlineDrawing
- InlineImage
- Metin
- UnsupportedElement (sayfa numarası vb.)
- Tablo
- ListItem
- FooterSection
-
'nı inceleyin.
- ListItem
- HorizontalRule
- InlineDrawing
- InlineImage
- Metin
- UnsupportedElement (sayfa numarası vb.)
- Paragraf
- HorizontalRule
- InlineDrawing
- InlineImage
- Metin
- UnsupportedElement (sayfa numarası vb.)
- Tablo
- ListItem
- FootnoteSection
Metin değiştiriliyor
Google Dokümanlar'da metin değiştirmek için genellikle Apps Komut Dosyası kullanılır. Diyelim ki müşteri bilgileriyle dolu bir e-tablonuz varsa ve kişiselleştirilmiş bir Google Dokümanlar'ı kullanabilirsiniz. (Bu tür işlemlere genellikle posta denir merge.)
Metin değiştirmenin birçok yolu vardır ancak en basit olanı
replaceText()
yönteminin kullanıldığından emin olun. replaceText
, çoğu öğeyi destekliyor
gibi çeşitli normal ifade özelliklerinden yararlanabilirsiniz. Aşağıdaki ilk işlev
Google Dokümanlar'a birkaç satır yer tutucu metin ekler; gerçek dünyada,
yer tutucuları dokümana sizin girmeniz daha olasıdır. İlgili içeriği oluşturmak için kullanılan
ikinci fonksiyon, yer tutucuları
client
nesne algılandı.
Bu işlevlerin ikisinin de
getActiveDocument()
yöntemini kullanabilirsiniz. Bu yöntem, yalnızca bir Google Dokümanı içinde oluşturulan komut dosyaları için geçerlidir.
bağımsız komut dosyası,
DocumentApp.create()
,
openById()
,
veya openByUrl()
.
Yer tutucu ekleyin
function createPlaceholders() { var body = DocumentApp.getActiveDocument().getBody(); body.appendParagraph('{name}'); body.appendParagraph('{address}'); body.appendParagraph('{city} {state} {zip}'); }
Yer tutucuları değiştirme
function searchAndReplace() { var body = DocumentApp.getActiveDocument() .getBody(); var client = { name: 'Joe Script-Guru', address: '100 Script Rd', city: 'Scriptville', state: 'GA', zip: 94043 }; body.replaceText('{name}', client.name); body.replaceText('{address}', client.address); body.replaceText('{city}', client.city); body.replaceText('{state}', client.state); body.replaceText('{zip}', client.zip); }
Özel menüler ve kullanıcı arayüzleri
Google Dokümanlar'ı düzenlemek için menüler, iletişim kutuları kenar çubukları. Bununla birlikte, bir komut dosyasının yalnızca belli bir dosya için kullanıcı arayüzüyle açık bir dokümanın mevcut örneğini içerir ve yalnızca bağlı olacaktır.
Özel menülerin nasıl ekleneceğini ve iletişim kutularını Google Dokümanlar'a ekleyin. Bir iletişim kutusu veya kenar çubuğu için özel arayüzler oluşturma hakkında daha fazla bilgi için HTML Hizmeti kılavuzu. Özel arayüzünüzü eklentiyi öğrenmek için stil kılavuzu ile tutarlı olması için stiline ve düzenine dikkat edin.
Google Dokümanlar eklentileri
Eklentiler, Google Dokümanlar'ın içinde çalışır ve yüklenebilir Google Dokümanlar eklenti mağazasından indirin. Google Dokümanlar için bir komut dosyası geliştirdiyseniz ve bunu tüm dünyayla paylaşmak isterseniz Apps Komut Dosyası, komut dosyanızı bir eklenti olarak kullanabilirsiniz.
Google Dokümanlar için eklenti oluşturma hakkında bilgi edinmek üzere Dokümanlar eklentileri oluşturma hızlı başlangıç kılavuzu sayfasına göz atın.
Tetikleyiciler
Bir Google'a bağlı komut dosyaları
Doküman, yanıt vermek için basit bir tetikleyici kullanabilir
dokümanın onOpen
etkinliğine
doküman için düzenleme erişimi olan bir kullanıcı dokümanı Google Dokümanlar'da açtığında gerçekleşir.
Tetikleyiciyi ayarlamak için onOpen()
adlı bir işlev yazmanız yeterlidir. Örneğin,
Google Workspace'te özel menüler bölümünü inceleyin.
Basit tetikleyici, menüleri eklemek için kullanışlı olsa da, herhangi bir Uygulama kullanamaz.
Yetkilendirme gerektiren komut dosyası hizmetleri.