דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. ארכיון code613m
  4. API באקסס

API באקסס

מתוזמן נעוץ נעול הועבר ארכיון code613m
111 פוסטים 12 כותבים 9.0k צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • dovidD מנותק
    dovidD מנותק
    dovid ניהול
    כתב ב נערך לאחרונה על ידי
    #56

    @דוד ל.ט.

    שאר הפריטים בפרוייקט הם משתנים, ובמקרה שלך נמתקד בשתיים:
    app.xaml שמייצג שתי קבצים: אחד כשמו app.cs ובן זוגו app.xaml.cs
    MainWindow.xaml אותו דבר, מייצג קובץ נוסף ששמו MainWindow.xaml.cs

    אז שתי הפריטים האלו כעת יהיו בפוקוס שלנו. הראשון (app) הוא אחד לכל "אפליקציית WPF" שזה סוג הפרוייקט בו התחלנו.
    הפריט הזה למעשה מייצג מחלקה (תכף אפרש מה זה מחלקה) בשם Application שהיא מנהלת את האפליקציה - היא גם נקודת ההתחלה של התוכנית כשהיא רצה.

    השני, הוא מייצג את החלון שרואים כשמקישים F5. יכולים להיות כמה סוגי חלונות באפליקציה (כל סוג יכול להופיע כמה פעמים שרוצים בחיי האפליקציה אבל הסוג הוא אותו אחד). בפרוייקט שלנו יש רק אחד והוא הראשי - א. נטען אוטומטית בהפעלת התוכנה (לאפוקי האחרים שנטענים רק כשתכתוב קוד לטעון אותם) ב. סגירתו סוגרת את התוכנה כולה. שמו מסמל על כך כי main זה ראשי.
    פתח את הקוד של MainWindow.xaml.cs ונתחיל לשחק.
    הקוד נראה ככה (כמעט), חסר קצת בהתחלה כמה שורות:

    using System.Windows;
    
    namespace ProjectName
    {
        /// <summary>
        /// Interaction logic for MainWindow.xaml
        /// </summary>
        public partial class MainWindow : Window
        {
            public MainWindow()
            {
                InitializeComponent();
            }
        }
    }
    

    יש בקוד הזה כמה מקטעים. אין צורך להבין כלום בינתיים, אבל אני לא אמנע מסיקור עיתונאי:
    הקטע הראשן זה using שזה טכניקה לקיצור הקלדה (בקוד שלי מחקתי את רובם, בשביל שייכנס פה בקלות).
    אח"כ מגיעים בלוקים - קטעים שמתוחמים ע"י {} שזה המקבילה של C# לEnd של VB.
    הבלוקים האלה, 3 במספרם, הם שלושה סוגים. האב הוא namespace שזה טכניקה לסידור נוח של הקוד שקשורה לusing דלעיל, הבן class זה מחלקה (שזה אבן הבניין של C#) אני אסביר על זה בהמשך. הבלוק הכי פנימי זה מתודה (sub של VB) מסוג בנאי (counstractor) - שוב, אל תנסה להבין כי זה לא חשוב כעת.

    כעת תשכח את כל ההקדמות העיתונאיות וניגש לתכלס:
    בC# אין משמעות לשורות. כלומר מבחינת הביצוע תוכל לכתוב את כל הקוד בשורה אחת (ברררר..). מה שמפריד בין פקודה לפקודה זה נקודה פסיק (;) אם היית יודע כמה אלפי שורות קוד כתבתי בVB ואיך היה קשה לי להתרגל...
    נכתוב שורה ראשונה, תשים שורה חדשה תחת שורה 12, ותכתוב שמה:

    Title = "מתי נתחיל כבר לעשות משהו עם מסדי נתונים";
    

    תריץ (F5 או הסמל הירוק בסרגל הכלים) ותעדכן אותי שאתה אחרי.

    פורסם במקור בפורום CODE613 ב31/03/2017 00:52 (+03:00)

    מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

    בכל נושא אפשר ליצור קשר dovid@tchumim.com

    תגובה 1 תגובה אחרונה
    3
    • מ מנותק
      מ מנותק
      מצפה לגדול
      כתב ב נערך לאחרונה על ידי
      #57

      OK

      שרטוט (2).png
      תודה!

      פורסם במקור בפורום CODE613 ב31/03/2017 10:56 (+03:00)

      תגובה 1 תגובה אחרונה
      0
      • dovidD מנותק
        dovidD מנותק
        dovid ניהול
        כתב ב נערך לאחרונה על ידי
        #58

        כעת נעשה כמה שלבים ברציפות:
        א. נקבע משתנה. בVB כותבים

        dim shem_sheba_li as string
        

        וזה אומר שהקצנו מזהה לישות מסוג "מחרוזת תווים". המזהה הוא "shem_sheba_li" והמילה dim היא מילת מפתח שמשמעותה הצהרת מזהה חדש.
        בC# כותבים בדרך אחרת:

        string shem_sheba_li;
        

        בלי הצהרה אין משתנה (בשונה מאפשרות שהייתה בVBA).
        אחרי שהצהרנו, אפשר להציב בו ערך

        shem_sheba_li = "טקסט.... ממש ממש מיוחד";
        

        אחרי שהצבנו בו ערך ניתן להשתמש בו כערך להשמה במאפיין Title דלעיל שמקבל כערך string:

        Title = shem_sheba_li;
        

        כעת נעיז ונלמד על פונקציה. בC# אין sub (פרוצדורה) וfunction, אלא הכל אותו תחביר.
        מה ההבדל בVB בין sub לfunction? ההבדל היבש הוא שfunction יכול להחזיר ערך, וsub לא.
        בC# בשביל לציין פונקציה מציינים ככה:
        כותרת עם א. ערך מוחזר (מספר או קטסט) ב. שם שמזהה את הפונקציה ג. סוגרים שבהם יכולים להיות 0 או יותר ארגומנטים
        אחרי זה בלוק {} שבתוכו יכולות להיות כמה משפטים (שורה הנגמרת בנקודה פסיק) שעושים כל מה שרוצים, חייבת להיות בכל מקרה החזרת ערך תואם למה שהוצהר בכותרת.
        דוגמא:

        string my_first_function() { return "הערך המוחזר"; }
        

        כתבתי בשורה אחת לנוחות.
        הפקודה return מחזירה ערך ומסיימת את הפונקציה. אחרי מגיע טקסט שזה string וזה תואם את מה שהצהרנו שmy_first_function מחזיר מחרוזת תווים (למה "מחרוזת תוים" ולא סתם טקסט? מה זה האקדמאיות הריקה הזו? עוד תלמד לראות שזה פני המציאות ולא מילים גבוהות ריקות אבל עוד חזון למועד - בתכלס תוכל להגיד טקסט).

        איך כותבים פרוצדורה = sub = בלוק פקודות שלא מחזיר שום ערך? אותו דבר כמו פונקציה רק במקום ערך מחזר כותבים void שמשמעותו כלום.
        אז נכתוב כעת כזו פונקציה:

        void ktov_koteret() { Title = "טקסט זה הוצב ע\"י פונקציית void"; }
        

        (הקו הלוכסן מבטל את המשמעות של המרכאות כסיום מחרוזת).
        תוסיף את השורה האחרונה מתחת לבלוק של public MainWindow(),
        ותחליף או תוסיף מתחת לשורה שכתבנו קודם (בפוסט הקודם), בשורה הזו:

        ktov_koteret();
        

        תריץ ותבדוק שהכל הולך טוב. אם כן נתקדם (שאלות בשמחה, אבל רק על מה שלמדנו לא על איך לעשות או על המשך הלימוד)
        נוסיף לפונקציה שלנו ארגומנטים כך שהיא תיראה ככה:

        void ktov_koteret(string parameter_ma_lasim_bakoteret) { Title = parameter_ma_lasim_bakoteret; }
        

        ואת שורת הקריאה תשנה לככה:

        ktov_koteret("זה כבר העברת רך כפרמטר");
        

        שים לב שהצהרת ארגומנט דומה להצהרת פונקציה: סוג ערך שאחריו מגיע מזהה לשימוש עם הערך בגוף הפונקציה.
        כעת נערבב מה שלמדנו:

        public MainWindow()
        {
            InitializeComponent();
        
            string po_ani_sam_text;
            po_ani_sam_text =  "מתי נתחיל כבר לעשות משהו עם מסדי נתונים";
            shimuy_coteret_hachalon(po_ani_sam_text);
        
        }
        
        void shimuy_coteret_hachalon(string parameter_kolsheu)
        {
            Title = parameter_kolsheu;
        }
        

        כעת שאלות אם יש, ו/או אישור התקדמות.

        פורסם במקור בפורום CODE613 ב31/03/2017 12:03 (+03:00)

        מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

        בכל נושא אפשר ליצור קשר dovid@tchumim.com

        תגובה 1 תגובה אחרונה
        4
        • מ מנותק
          מ מנותק
          מצפה לגדול
          כתב ב נערך לאחרונה על ידי
          #59

          OK

          פורסם במקור בפורום CODE613 ב31/03/2017 12:19 (+03:00)

          תגובה 1 תגובה אחרונה
          0
          • avrahamA מנותק
            avrahamA מנותק
            avraham
            כתב ב נערך לאחרונה על ידי
            #60

            זה המוסכמות של כתיבת משתנים בסישארפ? עם קו תחתי ואותיות קטנות?

            פורסם במקור בפורום CODE613 ב31/03/2017 12:33 (+03:00)

            תגובה 1 תגובה אחרונה
            0
            • מ מנותק
              מ מנותק
              מצפה לגדול
              כתב ב נערך לאחרונה על ידי
              #61

              האות הראשונה כן.
              (כך לפי איזה ספר שאני קורא תוך כדי)
              הרבה יתקן אותי אם אני טועה?

              פורסם במקור בפורום CODE613 ב31/03/2017 12:35 (+03:00)

              תגובה 1 תגובה אחרונה
              1
              • dovidD מנותק
                dovidD מנותק
                dovid ניהול
                כתב ב נערך לאחרונה על ידי
                #62

                @avraham

                זה המוסכמות של כתיבת משתנים בסישארפ? עם קו תחתי ואותיות קטנות?

                לא, אלא אני מגוון לנוחות.

                לפי המוסכמות (שמאוד מאוד עוזרות ואני אכן כותב על פי הם) הפרדה בין מילים ע"י אות גדולה, במשתנים פונקציות וכל מזהה חוץ מקבוע (ששם הכל גדול וההפרדה היא קו תחתי). בקש לאות ראשונה היא תמיד גדולה למעט משתנים מקומיים/פרטיים.

                פורסם במקור בפורום CODE613 ב31/03/2017 13:16 (+03:00)

                מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                בכל נושא אפשר ליצור קשר dovid@tchumim.com

                תגובה 1 תגובה אחרונה
                4
                • dovidD מנותק
                  dovidD מנותק
                  dovid ניהול
                  כתב ב נערך לאחרונה על ידי
                  #63

                  @מצפה לגדול

                  OK

                  מעולה! אתה הולך מצויין.
                  אני לא אמשיך היום בגלל שבת קודש וערבו של חג.
                  כנראה יום ראשון, נצלול כבר ישר לתוכנית הרצוייה לך ואז נחזור ללימוד, אז יעזור אם תתן קוים כלליים מה נחוץ לך בסיפור של הAPI.
                  אל תירד לרזולוציה איך זה ייעשה אלא תתמקד בחזון, למשל: "יש לי טבלה של סוגי דגים ואני רוצה שהמחשב יכתוב בטבלה אחרת על כל דג כמה פעמים הוא מופיע בים". או דוגמה מתאימה יותר לענייננו "יש לי טבלה עם שמות קבצים ואני רוצה שהמחשב יעלה כל קובץ לAPI מסויים ואז יכתוב את התוצאה בטבלה".

                  פורסם במקור בפורום CODE613 ב31/03/2017 13:18 (+03:00)

                  מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                  בכל נושא אפשר ליצור קשר dovid@tchumim.com

                  תגובה 1 תגובה אחרונה
                  4
                  • א מנותק
                    א מנותק
                    אהרן
                    כתב ב נערך לאחרונה על ידי
                    #64

                    דוד
                    עם אנשים כמוך
                    משיח כבר צריך להגיע!

                    פורסם במקור בפורום CODE613 ב31/03/2017 13:30 (+03:00)

                    תגובה 1 תגובה אחרונה
                    4
                    • מ מנותק
                      מ מנותק
                      מצפה לגדול
                      כתב ב נערך לאחרונה על ידי
                      #65

                      תודה רבה!!

                      יש לי בימות המשיח מערכת שמוכרת מוצרים, ואני צריך שהיא תקריא את הנתונים.

                      בניתי קובץ באקסס שמוריד את הקובץ משם, ומכניס אותו לטבלה.
                      עכשיו הוא לכל רשומה מוציא פלט שכתוב: X הזמין Z מוצרים. ס"ה לתשלום Y.
                      את הפלט הזה הוא מייצא לקבצי XXX.tts (קבצי הקראה בעברית ע"י רובוט במערכות 'ימות').
                      את זה אני צריך להעלות לבד בFTP.

                      אני רוצה שיהיה סקריפט שעושה את כל זה בלחיצת כפתור.
                      ואולי אפ' אוטומטי כל כמה דקות (ונשאיר מחשב דולק)

                      הבעיה שבגללה אייתיתי להכא (תרתי משמע, גם לפורום, וגם לC#), שההעלאה לא עובדת.
                      זה אמור להראות כך:

                      https://www.call2all.co.il/ym/api/UploadFile?token=XXXXXXXXXXXXXXXX&path=1.tts
                      

                      אבל אני לא יודע איך לשים את הקובץ עצמו.
                      ניסיתי file=, ולא עבד.
                      נסיתי גם להעלות דרך תוכנה של RESET (תוסף לכרום בשם Advanced REST client), ולא עבד.

                      יש להם טופס שמאפשר להתנסות בזה, ושם זה כן עובד.
                      בכתובת: https://www.call2all.co.il/ym/api_upload_test.php

                      ושוב תודה רבה!!

                      פורסם במקור בפורום CODE613 ב31/03/2017 13:48 (+03:00)

                      תגובה 1 תגובה אחרונה
                      1
                      • dovidD מנותק
                        dovidD מנותק
                        dovid ניהול
                        כתב ב נערך לאחרונה על ידי
                        #66

                        @אהרן

                        דוד
                        עם אנשים כמוך
                        משיח כבר צריך להגיע!

                        אינטרסים צרים שעוד תראה..

                        פורסם במקור בפורום CODE613 ב31/03/2017 14:28 (+03:00)

                        מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                        בכל נושא אפשר ליצור קשר dovid@tchumim.com

                        תגובה 1 תגובה אחרונה
                        0
                        • dovidD מנותק
                          dovidD מנותק
                          dovid ניהול
                          כתב ב נערך לאחרונה על ידי
                          #67

                          מצפה לגדול, כל כמה זמן נוצרים הקבצים? וע"י איזה פעולה של משתמש?

                          פורסם במקור בפורום CODE613 ב31/03/2017 14:32 (+03:00)

                          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                          בכל נושא אפשר ליצור קשר dovid@tchumim.com

                          תגובה 1 תגובה אחרונה
                          0
                          • מ מנותק
                            מ מנותק
                            מצפה לגדול
                            כתב ב נערך לאחרונה על ידי
                            #68

                            הם לא נוצרים, יש קובץ אחד שמתעדכן בכל פעולה.

                            פורסם במקור בפורום CODE613 ב31/03/2017 14:33 (+03:00)

                            תגובה 1 תגובה אחרונה
                            0
                            • A מנותק
                              A מנותק
                              avr416
                              כתב ב נערך לאחרונה על ידי
                              #69

                              דוד, כל הכבוד על ההדרכה המפורטת והמושקעת כל כך!!!

                              @מצפה לגדול

                              יש לי בימות המשיח מערכת שמוכרת מוצרים, ואני צריך שהיא תקריא את הנתונים.

                              סליחה על הבורות.. מה זה ימות המשיח?

                              פורסם במקור בפורום CODE613 ב31/03/2017 14:49 (+03:00)

                              תגובה 1 תגובה אחרונה
                              0
                              • מ מנותק
                                מ מנותק
                                מצפה לגדול
                                כתב ב נערך לאחרונה על ידי
                                #70

                                טוב... בזה כבר אני מבין.

                                זה חברה שמאפשרת תפעול חינמי של מערכת תוכן (IVR) טלפונית.
                                היא נפתחה לראשונה ע"י יהודי חב"די שהקים את קו "נחייג ונשמע" של חב"ד, ואח"כ הורחבה למערכות תוכן חינמיות, ומכאן השם המעניין.
                                רוב קווי הווצאפון וכו' שלהם.
                                ויש אפשרות לתכנות חלקי של המערכות.

                                פורסם במקור בפורום CODE613 ב31/03/2017 15:03 (+03:00)

                                תגובה 1 תגובה אחרונה
                                1
                                • M מנותק
                                  M מנותק
                                  magicode
                                  כתב ב נערך לאחרונה על ידי
                                  #71

                                  רק בשביל לעצבן את דוד 🙂
                                  אני כותב דוגמא איך מבצעים את העלאה הזאת בקלות ב nodejs.

                                  const fs = require("fs");
                                  const request = require("request");
                                  
                                  var formData = {
                                    token: 'token',
                                    path: '1.tts',
                                    upload: fs.createReadStream('1.tts'),
                                    convertAudio: '1'
                                  };
                                  
                                  request.post({ url:'https://www.call2all.co.il/ym/api/UploadFile' , formData: formData , json: true }, function optionalCallback(err, httpResponse, body) {
                                      if (err) {
                                          return console.error('upload failed:', err);
                                      }
                                      
                                      console.log('Upload successful!  Server responded with:', body);
                                  });
                                  

                                  פורסם במקור בפורום CODE613 ב01/04/2017 20:50 (+03:00)

                                  תגובה 1 תגובה אחרונה
                                  2
                                  • מ מנותק
                                    מ מנותק
                                    מצפה לגדול
                                    כתב ב נערך לאחרונה על ידי
                                    #72

                                    וזה עבד לך?
                                    (ח"ו לא לעצבן אף אחד)

                                    פורסם במקור בפורום CODE613 ב01/04/2017 21:13 (+03:00)

                                    תגובה 1 תגובה אחרונה
                                    0
                                    • M מנותק
                                      M מנותק
                                      magicode
                                      כתב ב נערך לאחרונה על ידי
                                      #73

                                      הוא מחזיר לי

                                      { yemotAPIVersion: 5,
                                        responseStatus: 'EXCEPTION',
                                        message: 'IllegalStateException(session token is invalid)' }
                                      

                                      בגלל שאין לי תוקן.

                                      פורסם במקור בפורום CODE613 ב01/04/2017 21:21 (+03:00)

                                      תגובה 1 תגובה אחרונה
                                      0
                                      • dovidD מנותק
                                        dovidD מנותק
                                        dovid ניהול
                                        כתב ב נערך לאחרונה על ידי
                                        #74

                                        @מצפה לגדול

                                        וזה עבד לך?
                                        (ח"ו לא לעצבן אף אחד)

                                        אין סיבה שלא יעבוד - זה עושה מה שהדפדפן עושה. גם בVBA אפשר, אבל אני רוצה שתגדל.

                                        פורסם במקור בפורום CODE613 ב01/04/2017 21:24 (+03:00)

                                        מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                                        בכל נושא אפשר ליצור קשר dovid@tchumim.com

                                        תגובה 1 תגובה אחרונה
                                        0
                                        • מ מנותק
                                          מ מנותק
                                          מצפה לגדול
                                          כתב ב נערך לאחרונה על ידי
                                          #75

                                          נכון. אבל למה באתי לפה, כי זה לא עובד.

                                          https://www.call2all.co.il/ym/api/UploadFile?token=XXXXXXXXXXXXXXXX&path=1.tts&upload=Yemot
                                          

                                          אני מנסה את זה, בדפדפן, וזה לא עובד. מישהו יודע איפה הטעות?
                                          או: מה הפרמטר של הקובץ עצמו, ובאיזה צורה.
                                          אם אתה רוצה טוקן, אני יכול לתת לך, השאלה איך.

                                          פורסם במקור בפורום CODE613 ב01/04/2017 21:28 (+03:00)

                                          תגובה 1 תגובה אחרונה
                                          0

                                          • 1
                                          • 2
                                          • 3
                                          • 4
                                          • 5
                                          • 6
                                          בא תתחבר לדף היומי!
                                          • התחברות

                                          • אין לך חשבון עדיין? הרשמה

                                          • התחברו או הירשמו כדי לחפש.
                                          • פוסט ראשון
                                            פוסט אחרון
                                          0
                                          • דף הבית
                                          • קטגוריות
                                          • פוסטים אחרונים
                                          • משתמשים
                                          • חיפוש
                                          • חוקי הפורום