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

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

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

dovid

@dovid
ניהול
אודות
פוסטים
10.2k
נושאים
185
שיתופים
0
קבוצות
2
עוקבים
32
עוקב אחרי
0

פוסטים

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

  • DataSet NullValue
    dovidD dovid

    @רחמים

    לגבי הINotifyPropertyChange אני משתמש בארוע שינוי שורה ומחיקת שורה בתוך ה DataTable

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

    @רחמים

    אפשר קישור לאשכול של שמואל וארכיטקט

    לשירותך, http://tchumim.com/post/558
    תרווה נחת.

    @רחמים

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

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

    @רחמים

    וזה חוסך את כל הקלאסים הארוכים של הדטה סט הרגיל רק מה זה לא ויזואלי אלא הכל בקוד.

    🙂

    פורסם במקור בפורום CODE613 ב22/01/2014 13:34 (+02:00)

    ארכיון code613m

  • DataSet NullValue
    dovidD dovid

    @רחמים

    @דוד ל.ט.
    לא צריך את המחלקה הארוכה שלך, די בארבעת שורות הקוד דלעיל.

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

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

    פורסם במקור בפורום CODE613 ב22/01/2014 14:40 (+02:00)

    ארכיון code613m

  • DataSet NullValue
    dovidD dovid

    תהיה בריא...
    אתה צודק, כמו שאתה משתמש זה מעולה, ובדרך זו גם בכלל לא צריכים את הTypedDataSet (כלומר DataSet רגיל מספיק).
    כל קיומו נועד ליצור שכבת אובייקטים קשוחים ולא אוספי אובייקט כמו הDataRow הרגיל.
    בשביל מה טיפוסים קשוחים?
    א. למנוע שגיאות. שלא תכניס טקסט בשדה מספרי.
    ב. להקל על הקריאות בקוד
    ג. להתמצאות בשדות ע"י ההשלמה אוטומטית

    פורסם במקור בפורום CODE613 ב21/01/2014 22:28 (+02:00)

    ארכיון code613m

  • DataSet NullValue
    dovidD dovid

    נכון, אני שוטה לגמרי. בItemArray לא תהיה לך שגיאה אף פעם.
    הבעיה זה בגישה למאפיינים.
    אם תכתוב: Dim a = Row.FieldName בהנחה שFieldName הוא ריק, תקפוץ לך שגיאה.
    ואל תטרח לומר לי אם זה עבד לך...

    פורסם במקור בפורום CODE613 ב21/01/2014 22:09 (+02:00)

    ארכיון code613m

  • DataSet NullValue
    dovidD dovid

    @רחמים

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

    נכון, כי זה עדיין DataRow... רק כעת שמתי לב שלמעלה כתבת As DataTable... במקום DataTable תכתוב את שם הTypedDataTable שלך.
    זה אמור להיראות ככה: XxxxDataSet.XxxxDataTable. במקום הX יהיה לך את שם הDS והטבלה בהתאמה.

    פורסם במקור בפורום CODE613 ב21/01/2014 21:58 (+02:00)

    ארכיון code613m

  • DataSet NullValue
    dovidD dovid

    @רחמים

    האם הקוד הבא אמור לקבל שגיאה?

    לא, הקוד לא אמור לזרוק שגיאה.
    אתה ממיר כל שורה לDataRow רגיל.
    אם תמחק את המילים As DataRow והטיפוס יישאר TypedDataRow הוא יזרוק שגיאה.

    פורסם במקור בפורום CODE613 ב21/01/2014 21:02 (+02:00)

    ארכיון code613m

  • DataSet NullValue
    dovidD dovid

    @רחמים

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

    יש מקומות בקוד שאני עובר בלולאת For Each על כל השורות ולא מקבל שום שגיאה, אלא אם שדה מסויים ריק הוא מחזיר DBNULL.

    אתה טועה או בנתונים שסיפקת, או בעובדה זו עצמה.

    פורסם במקור בפורום CODE613 ב21/01/2014 14:03 (+02:00)

    ארכיון code613m

  • DataSet NullValue
    dovidD dovid

    עוד הערה:
    כאלה שמשתמשים הרבה עם הTypedDataSet, יכולים לשקול לרשת את הDS+DT+DR. ולקסטם אותם.
    זה ממש נוח, ולא נמחק בייבוא מחדש וכדומה.
    כל דבר שלא רוצים לקסטם, לא צריך לכתוב לו קוד.

    פורסם במקור בפורום CODE613 ב21/01/2014 11:48 (+02:00)

    ארכיון code613m

  • DataSet NullValue
    dovidD dovid

    @ClickOne

    אפשר שהדאטאסט יסכים לקבל NULL.
    לך למאפייני העמודה, ותחליף במאפיין NullValue את הערך (Throw exception) לערך (Nothing).
    אם זה מעצבן אותך לעשות את זה על כל עמודה אתה יכול לבחור את כל העמודות (עם שיפט) - ואז לשנות את הכל בבת אחת.

    לערכים לא סטרינגיים (כמו תאריך) א"א לקבוע Empty או Nothing. אז צריך לשים ערך כל שהוא. וזה א"א עם Shift...

    פורסם במקור בפורום CODE613 ב21/01/2014 11:38 (+02:00)

    ארכיון code613m

  • DataSet NullValue
    dovidD dovid

    @רחמים

    אבל אצלי שאני משתמש ב MDF המאפיין הNullValue מוגדר כ Throw exception
    והמאפיין AllowDNNull מוגדר כ TRUE
    והמאפיין DefaultValue מוגדר כ DNNull
    והכל עובד מצויין ואין שגיאות שקופצות בשדות NULL
    אני משתמש ב VS 2010 אם זה משנה.

    אם אתה פונה למאפיין של DataRow שלא אוכלס אתה בהכרח מקבל שגיאה.

    @ClickOne

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

    נכון.
    הדרך הנכונה לדעתי זה ללכוד באירוע שורה חדשה ולהשים את הערך:

    dataSetInstant.TableName.TableNewRow += (s, e) => { e.Row("DateInsert") = Now; };
    

    פורסם במקור בפורום CODE613 ב21/01/2014 10:59 (+02:00)

    ארכיון code613m

  • WPF בחירת עמודות שלמות בדטה-גריד
    dovidD dovid

    תראה את הXAML של הכפתור.

    פורסם במקור בפורום CODE613 ב21/01/2014 14:39 (+02:00)

    ארכיון code613m

  • WPF בחירת עמודות שלמות בדטה-גריד
    dovidD dovid

    כל הבעייה זה בגרירה (במשיכה כלשונך), בלחיצה הכל עובד טוב?

    פורסם במקור בפורום CODE613 ב21/01/2014 14:05 (+02:00)

    ארכיון code613m

  • WPF בחירת עמודות שלמות בדטה-גריד
    dovidD dovid

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

    פורסם במקור בפורום CODE613 ב21/01/2014 11:31 (+02:00)

    ארכיון code613m

  • WPF בחירת עמודות שלמות בדטה-גריד
    dovidD dovid

    אתה רוצה שלחיצה תבחר את העמודה, ואתה מוותר על העניין של המיון?
    או שאתה משתף אותנו בדילמה...

    תוכל לשלב בכותרת כפתורון לבחירת העמודה. תראה מה שהם עשו פה:
    http://wpf.codeplex.com/wikipage?title=Column Selection

    הצלחה.

    פורסם במקור בפורום CODE613 ב20/01/2014 14:49 (+02:00)

    ארכיון code613m

  • מסדי נתונים והשוני בינהם
    dovidD dovid

    אין MDF ואין SDF.

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

    [size=150:3a5hykpx]Microsoft Sql Server[/size:3a5hykpx]
    זה תוכנה מבית מיקרוסופט, רצה כמו כל שרתי הנתונים כשירות ברקע (מופע). מבצעת תקשורת עם מחשבים אחרים ומספקת תשובות ופעולות לפקודות שנשלחות אליה במסגרת התקשרות, הפקדות הם טקסט רגיל של שפת T-SQL. במסגרת השירות רשומים מסדי נתונים שונים, שמשוייכים להם קבצים פיזיים במערכת הקבצים (אפשר לקשר מסד נתונים זמנית בזמן ההתקשרות מה שנקרא AttachDB, זה עשוי לדיבוג ולניסויים).

    [size=150:3a5hykpx]Microsoft Sql Server Compact Edition[/size:3a5hykpx]
    בעוד הראשון מחייב שירות ברקע, הCE (ראשי תיבות גירסה ניידת) משתמש בDLL ולא מחייב מופע שרץ במחשב. ממילא הוא "נייד", ניתן להעבירו לכל מחשב אחר אף שלא מותקן בו SQL SERVER. זה דומה לאקסס, אם כי הרבה יותר מקצועי, כי אקסס בקושי נחשב מסד נתונים. המתחרה שלו זה SqlLite. כמובן שניידות זאת באה על חשבון המושג מסד נתונים בחלקו הגדול, מבחינת ביצועים ועוד.

    כמובן שיש עוד שרתים מפורסמים, כמו הMySql וOracle.

    פורסם במקור בפורום CODE613 ב20/01/2014 12:16 (+02:00)

    ארכיון code613m

  • MDF גיבוי נתונים
    dovidD dovid

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

    פורסם במקור בפורום CODE613 ב26/01/2014 13:47 (+02:00)

    ארכיון code613m

  • MDF גיבוי נתונים
    dovidD dovid

    @ארכיטקט

    @ClickOne
    תנסה להעתיק עם פונקציית API.

    API מעתיק אפילו שהקובץ תפוס.

    זה לא עובד אפילו בוינדווס עצמו העתק הדבק בלי API, ולא מצינו שכוחות של API עדיף מכוח האינטרפייס, זולתי בדוס......

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

    פורסם במקור בפורום CODE613 ב26/01/2014 13:19 (+02:00)

    ארכיון code613m

  • MDF גיבוי נתונים
    dovidD dovid

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

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

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

    פורסם במקור בפורום CODE613 ב22/01/2014 19:00 (+02:00)

    ארכיון code613m

  • MDF גיבוי נתונים
    dovidD dovid

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

    בקשר לקישור שהבאת, יש שמה חידושים שיכולים לעזור מאוד לזה : http://stackoverflow.com/a/9241260/1271037

    פורסם במקור בפורום CODE613 ב22/01/2014 17:04 (+02:00)

    ארכיון code613m

  • MDF גיבוי נתונים
    dovidD dovid

    @רחמים

    בשיטה הזו צריך ללכת ID אחר ID ושדה אחר שדה וזה מצויין כשרוצים לשחזר חלק מהרשומות, אבל האם יש דרך לשחזר טבלה שלמה בשאילתא אחת שתחליף את כל הרשומות הקיימות ברשומות שבטבלה מהגיבוי ?
    תודה.

    כן.
    שאילתה די פשוטה.

    פורסם במקור בפורום CODE613 ב22/01/2014 11:17 (+02:00)

    ארכיון code613m
  • 1
  • 2
  • 491
  • 492
  • 493
  • 494
  • 495
  • 510
  • 511
  • 493 / 511
  • התחברות

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

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