問題を再現する手順は何ですか?
- 以下の関数を Google サイトに読み込みます。
- 関数 moveblogs() を実行します。
期待される出力は何ですか?
2013 年のすべてのブログ投稿 (お知らせ) のタイトルが Logger に記録され、新しいブログ (お知らせページ) に移動されることを期待しています。
代わりに何が見えますか?
エラーが表示されます:
サービス エラー: SitesApp: 内部エラー (行 25、ファイル「コード」) 破棄
可能であれば、問題を再現する小さなサンプル スクリプトのコードを提供してください。
function moveblogs() {
var fromblog = SitesApp.getPageByUrl("https://sites.google.com/a/mydomain.com/intranethome/home/Around-Intranet");
var toblog = SitesApp.getPageByUrl("https://sites.google.com/a/mydomain.com/intranethome/home/2013-around-Intranet");
var nextbloc = 0;
while (true) {
var pages2 = fromblog.getAllDescendants({"start":nextbloc,"max":100});
if (pages2.length > 0){
Logger.log("starting at.."+nextbloc+" there are .."+pages2.length+" pages starting with.."+pages2[0].getTitle());
var i = nextbloc;
for (var x in pages2) {
var publishedyear = Utilities.formatDate(pages2[x].getDatePublished(),"GMT","yyyy")
Logger.log("year: "+publishedyear);
if (publishedyear==2013) {
Logger.log("Title: "+pages2[x].getTitle());
pages2[x].setParent(toblog);
Utilities.sleep(1000);
}
i = i + 1;
}
} else {
break;
}
nextbloc = nextbloc + 100;
}
}
以下の追加情報を提供してください。
- 25 行目をコメント アウトすると、2012 年のブログ投稿を正常にログに記録できます。
以下のコードは、単一のブログ投稿を別の関数で移動できます。
blogpost.setParent(toblog);