-
@שאול-נ-י עכשיו נשאר רק איך עושים את זה כי גם אני לא מבין בזה
-
@שאול-נ-י הנה יש כאן איזה הסבר אבל צריך לדעת לקרוא אותו
https://f2.freeivr.co.il/post/35801 -
@פשוט-אבל-תותח אתה צריך לבנות את הבקשה קצת אחרת, ולהפריד את העניינים.
אני לא מנוסה בתחום, אבל הקוד הבא עשוי לעבוד:function uploadTextFileToYemot(){ var data = { 'token': '0733000000:1234', 'what': 'ivr2:/1/IdListMessage.ini', 'contents': SpreadsheetApp.getActiveSheet().getRange('L1').getValue() }; var options = { 'method' : 'post', 'payload' : data }; var response = UrlFetchApp.fetch('https://private.call2all.co.il/ym/api/UploadTextFile', options); //תוכל גם להציג את התגובה אם תרצה, על ידי השורה הבאה, או לנתח אותה כרצונך Logger.log(response.getContentText()); }
הערות:
- שים לב ששלפתי את הנתונים ב-content ישירות מהתא L1.
- התא K4 מיותר כעת.
- אולי בהמשך הייתי מציע לאסוף את כל הנתונים מן הגיליון ישירות בקוד ולא על ידי נוסחאות מסובכות בגיליון.
-
פשוט אבל תותחהשיב לOdedDvir ב 6 ביוני 2021, 15:53 נערך לאחרונה על ידי פשוט אבל תותח 6 ביוני 2021, 15:54
@odeddvir
מחזיר שגיאה אבל זה נראה בהתקדמותReferenceError: contents is not defined
ו... שוב תודה רבה
-
פשוט אבל תותחהשיב לOdedDvir ב 6 ביוני 2021, 16:08 נערך לאחרונה על ידי פשוט אבל תותח 6 ביוני 2021, 16:09
@odeddvir אני צריך לשים את הטקסט בתוך משהו ?
ניסיתי עם'
או"
וזה לא עזרזה נראה שגיאה בלקיחת הנתונים מהגוגל שיטס ולא בשליחה עצמה
-
שיניתי את הקוד כדי להקל על הדיבוג. תריץ ותראה מה מופיע ב-Logger:
function uploadTextFileToYemot(){ var contents = SpreadsheetApp.getActiveSheet().getRange('L1').getValue(); Logger.log('---START OF CONTENTS---'); Logger.log(contents); Logger.log('---END OF CONTENTS---'); var data = { 'token': '0733000000:1234', 'what': 'ivr2:/1/IdListMessage.ini', 'contents': contents }; var options = { 'method' : 'post', 'payload' : data }; var response = UrlFetchApp.fetch('https://private.call2all.co.il/ym/api/UploadTextFile', options) //תוכל גם להציג את התגובה אם תרצה, על ידי השורה הבאה, או לנתח אותה כרצונך Logger.log(response.getContentText()); }
-
@odeddvir tכל הכבוד על כל העזרה
ReferenceError: contents is not defined
-
@פשוט-אבל-תותח זה נראה לי כאילו לא ביצעת את השינוי בקוד.
-
-
@פשוט-אבל-תותח הקוד נראה תקין. בדוק שהגליון שמכיל את D1 פתוח והוא הגליון הפעיל.
-
@odeddvir כן
-
@פשוט-אבל-תותח הסתקרנתי. בדקתי את הקוד בעצמי, וגיליתי שהיתה לי שגיאה בשורה 2, כי לא ציינתי את האובייקט SpreadsheetApp. תיקנתי את הקודים למעלה וכעת זה שולח כראוי.
-
@odeddvir תודה רבה!
אין מילים אתה באמת תותח -
שאלה נוספת יש גם הגדרה ששואבת נתונים מקובץ במערכת, העניין הוא שזה מגיע כתשובה בתגובה, והשאלה שלי היא איך אפשר לקבל את זה בטבלה של גוגל שיטס
הקבצים שיוצאים מהמערכת הם בתבניות שונות
- INI
- CSV
- html
- ymgr
אשמח להסבר, גם אם רק על חלק מסוגי הקבצים זה יעזור לי מאוד, תודה רבה
-
@פשוט-אבל-תותח זה אותו נושא, או שהדבר היחיד שמקשר את זה לנושא הקיים זה שזה באותו פרוייקט/מטרה שלך?
אם זה נושא אחר פתח נושא חדש עם כותרת מתאימה. -
-
@odeddvir אמר בשליחת בקשת POST UploadTextFile ל-API של ימות המשיח:
var contents = SpreadsheetApp.getActiveSheet().getRange('L1').getValue();
יש אפשרות שבמקום תא אחד לשלוח עמודה שלימה ?
-
@פשוט-אבל-תותח אמר בשליחת בקשת POST UploadTextFile ל-API של ימות המשיח:
יש אפשרות שבמקום תא אחד לשלוח עמודה שלימה ?
כן:
getRange('L1:L')
-
@odeddvir זה שולח רק את התא הראשון
ניסיתי גם L1:L200 כנ"ל שולח רק את התא הראשון L1
תודה רבה -
@פשוט-אבל-תותח נכון, אתה צריך להחליף את getValue ל-getValues (ברבים) כך:
getRange('L1:L').getValues()
שים לב שהפעם התוצאה המתקבלת היא מערך דו-מימדי עם כל הערכים של התאים בטווח שציינת.