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

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

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
OdedDvirO

OdedDvir

@OdedDvir
אודות
פוסטים
2.4k
נושאים
60
שיתופים
0
קבוצות
0
עוקבים
21
עוקב אחרי
0

פוסטים

פוסטים אחרונים הגבוה ביותר שנוי במחלוקת

  • שינוי שפת תוכנה
    OdedDvirO OdedDvir

    @ארי אמר בשינוי שפת תוכנה:

    עריכה, איך אפשר לכתוב תנאי כזה?

    הנה הקוד של @clickone , בשינויים קלים (והזחה 😊 )

    Public Function ControlExistsInForm(frm As Form, ctrlName As String) As Boolean
        On Error Resume Next
            ControlExistsInForm = Not frm.Controls(ctrlName) Is Nothing
        On Error GoTo 0
    End Function
        
    Private Sub Form_Load()
        Dim rs As Recordset
        Set rs = CurrentDb.OpenRecordset("SELECT * FROM LangTable WHERE FormName='" & Me.Name & "'")
        While Not rs.EOF
            If ControlExistsInForm(Me, rs!ControlName) Then
                If Me(rs!ControlName).ControlType = acLabel Then
                    Me(rs!ControlName).Caption = rs(CurrentLanguageName & "Caption")
                Else
                    Me(rs!ControlName).Value = rs(CurrentLanguageName & "Caption")
                End If
                rs.MoveNext
            End If
        Wend
    End Sub
    
    

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

    כן, כי הוא בודק רק את הפקדים שבטבלת התרגום.

    תכנות

  • שאלה | איזה משתנה מחזיר את שם השולח בגוגל סקריפט?
    OdedDvirO OdedDvir

    @מוטי-אורן צדקת בהכל!
    זהו תקן של שליחת הודעות אימייל.
    ולא תמיד השדה מכיל את שם השולח. זה תלוי כמובן בשירות השולח.

    תכנות

  • getTime אינו פונקציה
    OdedDvirO OdedDvir

    @רפאל אוף!!
    אני מוכן לקבל את הרעיון ש TS בסך הכל נועדה לפתור חלק מהבעיות בזמן הכתיבה, ושבזמן הריצה אנחנו עדיין במערב הפרוע של JS, אבל בכל זאת הודעת השגיאה הייתה מטעה אותי, ומסתמא הייתי שובר את הראש זמן רב עד שהייתי קולט את הבעיה, TS רק גורמת להסתיר עוד יותר את השגיאה...

    תכנות

  • אמיתי... מצאתי את זה בקוד שלי.
    OdedDvirO OdedDvir

    @ארכיטקט יש לך טעות בקוד, תיזהר שלא יישרף לך:

           await Task.Delay(1000 * 60 * 60 * 24); // <<בישול של שמונה עשרה שעות
    

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

    תכנות

  • איך בוחרים את הטכנולוגיה המתאימה
    OdedDvirO OdedDvir

    @davidnead אמר באיך בוחרים את הטכנולוגיה המתאימה:

    בחרתי לקבל את זה כמחמאה.

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

    תכנות

  • איך בוחרים את הטכנולוגיה המתאימה
    OdedDvirO OdedDvir

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

    האם העובדה שמטפל לא שולט בכל שיטות הטיפול הקיימות עלי אדמות, כדי להציע למטופל שלו את הטיפול האולטימטיבי לבעיה - היא חוסר הגינות? לעניות דעתי - ממש לא. אבל זו בהחלט פשיעה אם הוא לא מכיר את התחום שבו הוא מציע טיפול.
    האם טבח אמור להכיר את כל סוגי המאכלים ושיטות הבישול \ האפיה \ הטיגון וכו'? לא.
    הוא יכול להיות מכין עוגות מצויין, הגם שהוא מכין חביתות גרוע. מה בכך אם יתמחה במקצועיותו כקונדיטור צמרת, מי שרוצה עוגה משובחת שיבוא, ומי שמעוניין בחביתה שילך לחנות אחרת?

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

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

    אתה רוצה לפתח פולסטאק מהקרקעית עד למעלה - מצוין! תעשה את זה הכי טוב שאתה יכול, והלקוח שלך יקבל את התמורה המלאה לכספו, ואת השירות הטוב ביותר שאתה יכול לספק לו.

    ובנימה אישית: המומחיות שלי הקטן זה אקסס, וגם עיקר הפרנסה שלי בתכנות היא כרגע ממנה. אני תמיד מבהיר ללקוחות שלי את היתרונות והחסרונות שלה, ואני לא מרגיש שזה מרתיע אותם, אדרבא הלקוחות שלי מאוד מרוצים, ואני מוצא פתרונות כמעט לכל בעיה שצצה - במהירות, וברבות השנים פיתחתי פריימוורק שלם לממשק המשתמש שלה.
    אני כן רוצה להיות עדכני ולהרחיב את היכולות שלי, ולכן נפתחתי גם לטכנולוגיות אחרות. למרות שבניתי כמה אתרים מאפס, כולל מסד נתונים, אבטחה ופרונט מלא, עם Node ומונגו, אני הכי נמשך ל-C# ובלייזור, ומשתדל להיות מקצועי בהם. כשארגיש שאני טוב מספיק - אציע ללקוח שלי גם את זה בלי שום רגשות אשמה שמא אני לא מכיר איזו טכנולוגיה יותר טובה.

    תכנות

  • heroku - איך מתחילים
    OdedDvirO OdedDvir

    אם אתה מתכוון לשלב ההתחלה, סתם לפתח משהו בנוד ולראות איך זה עובד - @yossiz צודק. פשוט תפתח שרת מקומי במחשב שלך.
    אבל אם כוונתך לשלב הבא - להעלות את האפליקציה לרשת ולראות אותה במצב פרודוקשן - אז אתה צריך לפתוח פרוייקט בהרוקו, ולהשתמש ב git כדי לדחוף לשם את האפליקציה (deploy)

    ראשית תפתח חשבון בהרוקו (כבר עשית את זה) ותתקין את ה-CLI במחשב.

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

    git init
    git add .
    

    אחר כך תתחבר להרוקו על ידי הפקודה:

    heroku login
    

    יפתח לך חלון דפדפן ותכניס את פרטי החשבון שפתחת.

    כשאתה עדיין בתיקיה הראשית, צור אפליקציה חדשה בהרוקו:

    heroku create
    

    וכדי לדחוף את הקבצים לענן, תקליד את הפקודה:

    git push heroku master
    

    הערה: הנחתי שיש לך הכרות עם גיט. אם לא - פתח נושא חדש על כך.

    תכנות

  • איפוס אובייקטים בקוד VBA
    OdedDvirO OdedDvir

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

    יש שפות שבהן יש מנגנון מובנה שאמור לזהות אובייקטים שאינן בשימוש ולשחרר אותן אוטומטית. מנגנון זה נקרא בשם המכובד: "איסוף זבל" (Garbage Collection) ויש עליו חומר רב ברשת.

    על קצה המזלג, אפשר לחלק את המנגנון לשני חלקים:

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

    • בזמן הריצה - כאן זה תלוי מאוד בשפה, יש שפות שמבצעות זאת אוטומטית (מבלי שתהיה לך איזו שליטה או ידיעה על כך כמעט) ויש שפות שמטילות עליך את האחריות המלאה לדאוג לכך.
      על פי רוב, בסיום מקטע Scope (בVBA כשתגיע למילה End) האובייקט אמור להתנדף.

    ל-VBA קיים מנגנון איסוף זבל אוטומטי סביר בזמן ריצה, אך כמו כל דבר בעולם - הוא לא מושלם. ובתוכנות מורכבות מבחינת קוד, אתה עלול להגיע למצבים של זליגת זיכרון.
    למשל, אובייקט שהוגדר בתוך מקטע Scope לא ישוחרר מהזיכרון בסיום ה Scope אם קיים אליו איזה שהוא מצביע אחר.

    אולי בהמשך אדגים זאת על ידי קוד.

    תכנות

  • יצירת מסמכים דרך ה API של EZcount - אקסס
    OdedDvirO OdedDvir

    @מלא אמר ביצירת מסמכים דרך ה API של EZcount - אקסס:

    @OdedDvir יש לך נסיון עם זה?

    לא.
    אבל משהו לא מובן לי בקוד הנ"ל.
    מדוע אתה משתמש בפונקציה ConvertToJson על Body, כאשר Body מוגדר כבר כמחרוזת בפורמט Json? הפונקציה אמורה לקבל אובייקט ולהמיר אותו לJson. להערכתי הפונקציה מחזירה לך מחרוזת Json שמכילה אובייקט אנונימי של מחרוזת Json....
    נסה לשלוח את Body ישירות כפרמטר:

    Sub Test()
        Body = "{""api_key"": ""b3b....1"",""developer_email"": ""myMail@gmail.com"",""type"": ""405"",""customer_name"": ""My name"",""payment"": ""[{""payment_type"": ""1"",""date"": ""10/10/2020"",""payment_sum"": ""2""}]""}"
        Debug.Print httpPost("https://www.ezcount.co.il/api/createDoc", Body)
    End Sub
    

    הערה: לא התעמקתי בשינוי של מבנה ה-Json עצמו שהביא @dovid, לצערי אין לי זמן כעת לעבור על הדוקומנטציה של ה-API. פשוט העלתי את הנקודה הנוספת הנ"ל.

    תכנות

  • עזרה בc# | גרשיים בטקסט
    OdedDvirO OdedDvir

    @נ-נח כפי הנראה ערבבת כאן שני סוגי השמה למחרוזת:
    verbatim ו-normal. לכל אחד תחביר שונה להוספת תו הגרשיים: ".

    באופן הרגיל עושים כך:

    string s = "The item: \"BlaBla\" was not found";
    

    בשיטת Verbatim עושים כך:

    string s = @"The item: ""BlaBla"" was not found";
    

    בשני המקרים המשתנה s יכיל את המחרוזת: The item "BlaBla" was not found

    תכנות

  • זמן ריצה של קוד
    OdedDvirO OdedDvir

    @מומחה-באקסס לא התכוונתי מעולם לומר שאסור להשתמש ב-DCount ושות', אלא שמיעוטן יפה.
    במקרה שבו פתחת את הפוסט, היה ניכר שיש בעיה רצינית ביעילות, וראית את השיפור העצום ששימוש בכמה שאילתות גרם, והוריד את זמן הריצה פי 100 כמעט בדיוק: שניות 4/210 = 0.019.

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

    במקרה הזה של הטופס, זה לכאורה מקום ראוי להשתמש ב-DCount. אבל תבדוק טוב אם אי אפשר להמנע בכל זאת.

    תכנות

  • שאלה בסיסית באינדוקס מסד נתונים
    OdedDvirO OdedDvir

    @מנצפך שאלה בסיסית, והתשובה מורכבת.
    אינדוקס נכון הוא אחת המלאכות המאתגרות בבסיס נתונים.

    התשובה הזהירה שלי היא שזה תלוי באופי של המערכת, ובמבנה השאילתות הנפוצות שלך, מה מופיע בתנאי WHERE ו-GROUP BY.

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

    הנה הסבר קצר על העניין: https://use-the-index-luke.com/sql/where-clause/the-equals-operator/concatenated-keys

    והנה תשובה מפורטת מסטאק: https://stackoverflow.com/a/179224

    תכנות

  • Fake text detection
    OdedDvirO OdedDvir

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

    תכנות

  • אולי זו עיצה טובה למחפש את דרכו בעולם פיתוח אתרים.
    OdedDvirO OdedDvir

    @dovid אמר באולי זו עיצה טובה למחפש את דרכו בעולם פיתוח אתרים.:

    כי כעת אתה בסכנת....
    תוכנת אקסס ... תקרת זכוכית לכל החיים

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

    אכן הנקודה ש @אבי-203 מעלה היא חשובה. את Wix אני בכלל לא מכיר, אבל כיוון שהזמן שלי הוא לא אינסופי, אני מעדיף להיות מומחה במשהו אחד מאשר להכיר מלמעלה הכל. וכי יש פלטפורמה שאין בה חסמים? לא לכל אחד יש את הזמן להכיר את כל הפלטפורמות שיש, ולו רק בשביל להחליט מה הכיוון שלו.
    אז ישר כח על הכיוון המפורט!

    אני הספקתי בשנה האחרונה להכיר ולפתח כמה דברים בסי שארפ, JS, Node, CSS, WordPress, שיחקתי עם Python ו-PHP, ובסיסי נתונים שונים כמו מונגו, ו-Postgress.
    בסיכום זכיתי גם לבלוע כמה וכמה תיסכולים, ואולי יצאתי קצת יותר מכוון...

    אני מודה ל@dovid שמכה על קודקודי ואומר לי גדל...

    תכנות

  • קובץ פאוור פוינט כאתר אינטרנט
    OdedDvirO OdedDvir

    @חוקר פעם חיפשתי משהו דומה, ונתקלתי באתר הזה שמאפשר להמיר מצגת ב PowerPoint ל-HTML בחינם. זה לכאורה הפתרון הכי פשוט. אני לא יודע כיצד הוא מסתדר עם עברית.

    עריכה: עכשיו מצאתי בסטאק פתרון הרבה יותר פשוט:

    <iframe src='https://view.officeapps.live.com/op/embed.aspx?src=[https://www.your_website/file_name.pptx]' width='100%' height='600px' frameborder='0'>
    

    עיין שם לעוד פתרונות!

    תכנות

  • התייעצות על כללי הצטרפות חדשים
    OdedDvirO OdedDvir

    @clickone אמר בהתייעצות על כללי הצטרפות חדשים:

    מי שרוצה יכול לקרוא גם ככה....

    איך?

    אני אישית הייתי משאיר את התשלום ומעלה את המחיר ל25 שח לחודש

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

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

    תכנות

  • עזרה - כיצד לעשות יתרה מצטברת בטופס אקסס
    OdedDvirO OdedDvir

    @חייםיודלביץ הדרך הכי פשוטה היא ליצור שאילתת עזר על הטבלה הקיימת, ולהוסיף בה את השדה המחושב Amount.
    לדוגמא אם הטבלה שלך נקראת: MyTable, ויש לה את השדות Zchut ו-Chova, צור שאילתא qryMyTableWithAmounts עם התחביר הבא:

    SELECT MyTable.*, Nz([Zchut],0)-Nz([Chova],0) AS Amount FROM MyTable
    

    עכשיו תחליף (בשאילתות) בקריאה לפונקציה DSum את "MyTable" בשאילתא שיצרת:

    DSum("Amount","qryMyTableWithAmounts","ID<=" & [ID])
    

    עריכה: בקוד אפשר לוותר על השאילתא ולחשב את ההפרש בשדות עצמן (בשורה 9)

                newRunningSum = newRunningSum + !Zchut - !Chova 'חישוב הסכום החדש
    
    תכנות

  • איך עושים JOIN?
    OdedDvirO OdedDvir

    @nigun ממש בראשי פרקים כדי לא לחרוג מהנושא של האשכול:
    זה השדה שאמור לזהות את הרשומה. הוא תמיד ייחודי (ללא כפילויות בין הרשומות בטבלה) ובדרך מוסכמה הוא נקרא ID ולרוב הוא מסוג LongInt (יש גם מקרים יותר נדירים של שימוש ב GUID)

    הוא השדה שאמור להיות המקשר הקלאסי בין טבלאות בשאילתות, כלומר שלרוב עליו מבצעים את ה-Join.

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

    תכנות

  • ג'אווה... התחביר נכון?
    OdedDvirO OdedDvir

    @מוטי-מן זה קוד שהתקבל על ידי דה-קומפילציה של התוכנה, נכון?
    על פי מה שאני יודע, הדיקומפיילר נותן את השם 1 באופן שרירותי למחלקה, וייתכן שהקובץ המכיל את קוד המחלקה הוא עם שם שונה. תבדוק כמה קבצים נוצרו על ידי הדיקומפיילר ואם קיים שם קובץ בשם "1".

    תכנות

  • תכנון DB
    OdedDvirO OdedDvir

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

    1. שם ייחודי לכל טבלה Table1, Table2, ....Table987
      מסתמא תצטרך עוד טבלת עזר כדי לתחזק ולשייך כל טבלה
    2. הוספה \ הסרה של שדות מ-1000 טבלאות! (גם אם כרגע נראה לך שלא שייך מפאת השפה)
    3. שאילתת איחוד של 1000 טבלאות!
    SELECT * FROM Table1
    UNION
    SELECT * FROM Table2
    UNION
    SELECT * FROM Table3
    UNION
    SELECT * FROM Table4
    UNION ...........
    
    1. יש עוד כמה תרחישים מסמרי שיער, כמו גיבויים ושחזורים...

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

    תכנות
  • 1 / 1
  • התחברות

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

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