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

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

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

OdedDvir

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

פוסטים

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

  • טבלת צירופים ב-SQL
    OdedDvirO OdedDvir

    @איש-נחמד כתב בטבלת צירופים ב-SQL:

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

    זו הדרך שבה הייתי בוחר. לגבי יצירת הטבלה, אם כי אפשר ליצור אותה ע"י שאילתת SQL, הייתי מעדיף את דרך הקוד, כי זו פעולה ששיכת לעיצוב יותר מאשר מניפולציה על נתונים, שהרי כל הנתונים זמינים כבר בצורה מנורמלת במבנה הפשוט שציינת (שם1, שם2, ערך)

    תכנות

  • יוטיוב - אודיו בלבד
    OdedDvirO OdedDvir

    @dovid האם גם זה כפוף לפתיחה של נטפרי, או שאין חסימת תוכן אודיו בלבד?

    אינטרנט

  • תיבה בשולבת באקסס
    OdedDvirO OdedDvir

    @A0533057932 יש בפוסט הזה דוגמא.

    תוכנה

  • קישור נתונים באקסס
    OdedDvirO OdedDvir

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

    • שנה את הצג פקד ל"תיבה משולבת"
    • במקור השורה תבחר את טבלת Address.
    • בעמודה המאוגדת תבחר 1
    • את מונה העמודות תגדיר ל-4.
    • וברוחב העמודות תקליד ;0

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

    תוכנה

  • קישור נתונים באקסס
    OdedDvirO OdedDvir

    @A0533057932 הלוגיקה נכונה.
    הסבר: הקשר שיצרת הוא יחיד(Address)-לרבים(user)
    המשמעות היא שלכל כתובת יכולים להיות משוייכים 0 או יותר משתמשים, אבל לכל משתמש יכולה להיות 0 או כתובת אחת בלבד (שהמזהה שלה נמצא בשדה Address_ID)

    תוכנה

  • VBA. איך לפתוח ולעבוד עם WORD על ידי ACCESS
    OdedDvirO OdedDvir

    @chagold אני חושב שהוא לא התכוון לקשר את המסמך word למסד הנתונים, אלא פשוט לפתוח את המסמך מתוך קוד vba שרץ באקסס.
    @Y-Excel-Access בקוד שצירפת אתה לוקח רק את שם הקובץ ללא הנתיב, אתה אמור להכניס את הנתיב המלא של הקובץ:

    C:\Users\MyUser\Documents\Word\MyFile.docx
    

    כי אם תכתוב רק את שם הקובץ, כך:

    MyFile.docx
    

    הוא יחפש אותו בתיקייה הנוכחית (שבה רץ הקוד).
    אגב, כדי לטפל במאפייני קובץ, כגון להסיר נתיב\סיומת\וכו' מומלץ להשתמש באובייקט FileSystemObject שמיועד לכך.

    תכנות

  • עזרה באקסס
    OdedDvirO OdedDvir

    @דוד-החדש אני מבין שאתה מתכוון ליתרה מצטברת. אם כן עיין כאן:
    https://tchumim.com/topic/10008/עזרה-כיצד-לעשות-יתרה-מצטברת-בטופס-אקסס

    תוכנה

  • VBA. איך לפתוח ולעבוד עם WORD על ידי ACCESS
    OdedDvirO OdedDvir

    @yossiz לכאורה צריך את שניהם לשני המקרים:

    Public Sub CanIHaveAWordPlease()
        Dim WordApp As Object
        'Try to get an open instance
        On Error Resume Next
        Set WordApp = GetObject(, "Word.Application")
        On Error GoTo 0
        'If nothing was found, create a new instance
        If WordApp Is Nothing Then
            Set WordApp = CreateObject("Word.Application")
            WordApp.Documents.Add
        End If
        WordApp.Visible = True
        WordApp.Activate
    End Sub
    
    
    תכנות

  • עזרה באקסס
    OdedDvirO OdedDvir

    @דוד-החדש כתב בעזרה באקסס:

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

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

    =DSum("PaymentAmount, "ClientPayments", "ClientID=" & cboSelectClientId.Value)
    

    ולשאלתך השנייה:

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

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

    תוכנה

  • WPF + Entity framework -information
    OdedDvirO OdedDvir

    @חגי כתב בWPF + Entity framework -information:

    MAUI

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

    תכנות

  • WPF + Entity framework -information
    OdedDvirO OdedDvir

    @dovid כתב בWPF + Entity framework -information:

    @OdedDvir תוכל להמליץ על מקורות לימוד?

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

    כאן יש המון סרטונים https://blazortrain.com/ והוא מציג סקירה די מקיפה של הטכנולוגיה, עם הרבה דוגמאות.

    גם לבחור הזה יש כמה סדרות על בלייזור בערוץ:
    https://www.youtube.com/@Csharp-video-tutorialsBlogspot
    וגם בלוג:https://www.pragimtech.com/blog/blazor/what-is-blazor/

    גם כאן יש הדרכות טובות ועדכניות:
    https://www.youtube.com/@CuriousDrive
    ויש לו ריפו עם דוגמאות: https://github.com/CuriousDrive

    תכנות

  • WPF + Entity framework -information
    OdedDvirO OdedDvir

    @dovid אם אתה מדבר על בשלות ל-Production - לפחות מבחינת פיתוח אפליקציית Web, זה בשל מספיק לדעתי, ומספק יתרון גדול למי שכבר עובד עם C#, וחוסך את הצורך בלימוד של framework כמו Angular, Vue או React.
    האמת היא שכבר נתקלתי בחשש של אנשים להגר לשם, ואני מבין את זה במערכות קיימות, אבל בפיתוח חדש יש פחות בעיה. אני לא לוקח אחריות על הקריזות של מייקרוסופט, אבל בהחלט נראה שהם הולכים מאוד חזק על הכיוון של Blazor בשנים האחרונות. אם הוא הולך על טכנולוגיות של Microsoft, ואין לו צורך דווקא בפיתוח תוכנה שולחנית, אלא הוא מחפש להרחיב את האופקים, זה לדעתי הרבה יותר שימושי מ-WPF.

    תכנות

  • WPF + Entity framework -information
    OdedDvirO OdedDvir

    @mekev גם אם אתה חובב אתגרים, אני לא ממליץ לך על WPF, אפילו לא לתוכנה שולחנית.
    אם כבר, אני אציע לך ללכת על Blazor. זה הרבה יותר גמיש וחוצה פלטפורמות, בפרט עכשיו עם התוספות המדהימות של DotNet 7, זה נראה גם הכיוון שאליו מושכים מייקרוסופט.

    תכנות

  • עזרה באקסס
    OdedDvirO OdedDvir

    @דוד-החדש כתב בעזרה באקסס:

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

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

     DSum ( "ClientTotalSum", "ClientPayments", "ClientID=" & 4)
    

    דבר נוסף אני רוצה שיציג לי בכל שורה יתרה עדכנית לפי לקוח, האם יש אפשרות כזאת?

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

    תוכנה

  • אפשר בבקשה קוד של מעבר על עץ *לא* בינארי
    OdedDvirO OdedDvir

    @ליה בעץ לא בינארי, מספר הצאצאים שיוצאים מכל צומת יכול להיות גדול מ-2. דרך אחת לאחסן את ההפניות לצאצאים הוא ע"י מערך, לכן צריך לסרוק את כל הצמתים במערך.
    לדוגמא (#C):

    public class Node {
       public string Value {get; set;}
       public Node[] Nodes {get; set;}
    }
    // ...
    public void traverseNode(Node root) {
       Console.Writeline(root.Value); // print node's value
       foreach (Node n in root.Nodes) {
          traverseNode(n);
        }
    }
    
    תכנות

  • עזרה בקטע קוד C++
    OdedDvirO OdedDvir

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

        result += segment;
    

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

    if (size < 128)
       segment[size] = '\0';
    result += segment;
    

    למעשה זה קצת מטריד אותי שזה עבד בלי לקרוס, כי לא ברור לי מניין ידוע גודל המערך segment להיות 128, בכל האיטרציות הקודמות. הקוד הזה לא מניח את דעתי לגמרי. הפתרון הכי טוב זה להעתיק תמיד size תוים.
    ובלאו הכי, נראה לי שהפעולה += מבצעת המרה לא מפורשת לאובייקט String. הכי טוב להגדיר מראש את הגודל המקסימלי של result, ולהשתמש בהעתקה ישירה ע"י memcpy.

    // Globals
    define MAX_LEN 1000
    char result[MAX_LEN+1];  // save space for trailing null char
    int resultSize = 0;
    
    ...
    void doSomething(char * segment, int size) {
       int charsToCopy;
       charsToCopy = resultSize+size > MAX_LEN ? MAX_LEN-resultSize : size;
       if (charsToCopy > 0) {
          memcpy(result[resultSize], segment, charsToCopy);
          resultSize += charsToCopy;
          result[resultSize] = '\0'; // add trailing null char
       }
    }
    

    ככה זה יותר בטוח

    תכנות

  • עזרה בקטע קוד C++
    OdedDvirO OdedDvir

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

    תכנות

  • עזרה בקטע קוד C++
    OdedDvirO OdedDvir

    @yossiz לכאורה אפשר לוותר על זה לגמרי, אבל אז צריך לשלוח גם את הגודל של המערך (כי אין null char בסוף)

    // cast into char array and send it to other function
       doSomething((char *)buff, c);
    
    ...
    void doSomething(char * segment, int size) {
     // do your thing
    }
    
    תכנות

  • עזרה בקטע קוד C++
    OdedDvirO OdedDvir

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

    // insert into string and send it to other function
    String segment = String((char *)buff);
    

    ובעצם אפשר ישר כך:

    doSomething(String((char *)buff));
    
    תכנות

  • עזרה בקטע קוד C++
    OdedDvirO OdedDvir

    @איש-ימיני buffer הוא אוגר. כאשר המידע מועבר בצורה לא רציפה, משתמשים ב-buffer כדי לקרוא את המידע בחתיכות.

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

    void doSomething(String segment) { 
     result += segment;
    }
    
    תכנות
  • 1 / 1
  • התחברות

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

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