yitzchok

Forum Replies Created

מוצגות 15 תגובות – 2,386 עד 2,400 (מתוך 2,454 סה״כ)
  • Replies
  • yitzchok
    משתתף
    IL
    שלב א': קלט

    בשלב INPUT של הפרוצדורה תוסיף שורה:
    שם פרמטר: CUS
    כותרת:
    מיקום:
    רוחב: 16 לפי CUSTNAME, או 0
    קלט: I
    ערך:
    טיפוס: FILE
    עמודת טבלה: CUSTNAME
    שם טבלה: CUSTOMERS

    תוצאת הגדרה זו היא לתת לך קובץ שהוא טבלה זמנית בצורת CUSTOMERS המחזיק את הרשומות אותן המשתמש בוחר

    כדי להתשמש בזה יש צורך בשלב ב':

    שלב ב': קישור לדו"ח

    בפרוצדורה להיכנס לפרמטרים של השלב של הדו"ח
    ב"שם פרמטר" לרשום CUS
    זה יביא "FILE" ל-"טיפוס"
    יש להוסיף בשדה "ערך" את שם הטבלה מתוך הדו"ח.

    עשכיו אני זוכר שמדובר בעמודה פרטית! כן תצטרך להוסיף טבלה לדו"ח. לבד זה לא מחייב העתקת הדו"ח אבל אני מדמיין שתרצה לשנות את המיון ואולי קיבוץ בדו"ח וזה כן יחייב העתקה אז לך תעתיק את הדו"ח. אז תתחיל בהוספת העמודה שהוספת לטבלה, ותחבר ל-CUST של CUSTOMERS, נניח במזהה 5.

    מזהה 5 דורש ששם הטבלה שאתה כותב ב"ערך" יהיה CUSTOMERS5. אם תשתמש במזהה 0 אז סתם CUSTOMERS.

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

    בהצלחה

    עניין אחר:

    מה קורה כשהמשתמש לא קבע לקוח לתקלה? אני חושש שכל התקלות האלה עלולות להופיע בכל דו"ח.

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    אי אפשר להוסיף לפרוצדורה הקיימת

    יש להעתיק את הפרוצדורה ולהוסיף פרמטר מסוג FILE על CUSTOMERS.CUSTNAME לשלב INPUT

    יש להעביר את הקובץ הזה כפרמטר בעל אותו שם לדו"ח עם שם הטבלה (CUSTOMERS נניח) בשדה "ערך"

    מצד הסינון אין צורך לשינויים בדו"ח – קישור של הקובץ לדו"ח יגרום לזה שהדו"ח לא יכיר לקוחות חוץ מאלה שיש בקובץ ואין צורך להוסיף תנאי נוסף כלשהו לדו"ח.

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

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

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    במסך DOCUMENTS_Q רואים ש"סטטוס קריאה" הוא CALLSTATUSES.CODE

    בעמודת CALLSTATUS רואים ביטוי שקושר בין CALLSTATUSES.CALLSTATUS ובין SERVCALLS.CALLSTATUS. עידכונים לא נעשו ע"י עידכון אוטומטי על בסיס "חיתוך" במחולל אלא עמודת CALLSTATUS רשום כחלק מעדכון של SERVCALLS בהפעלת POST-UPDATE

    בדו"ח המדובר טבלת SERVCALLS לא מופיעה לכן נמשיך…

    אני מוצא ש-SERVCALLS.DOC קשור ל-DOCUMENTS.DOC ביחוך. אין סימן שאלה. כנראה דואגים שתמיד תהיה רשומה ב-SERVCALLS עבור כל DOC מסוג Q.

    כך שמספיק בדו"ח שלך כך:
    הוספת עמודת DOCUMENTS.DOC (נוסף) עם חיתוך ל-SERVCALLS.DOC
    עוד עמודה של SERVCALLS.CALLSTATUS עם חיתוך ל-CALLSTATUSES.CALLSTATUS
    ואז עמודה גלויה של CALLSTATUSES.CODE

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    אני מציע שתגדיר הודעה זהה שתישלח אליך כמשתמש ותראה אם סוג הנמען משפיע.

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

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

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    1. מדובר באימייל למשתמש המערכת לפי משתמש/קבוצה/שדה במסך? ולא לפי כתובת דואר? ז"א כל הודעה היא בלי link לא משנה מה סוג הנמען? לא היה מפתיע אותי אם המערכת תבדיל כמו שדו"חות שיוצאים יוצאים ללא לינקים.

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

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    יש סביבות בהן יש מגבלות בגודל הטבלאות. אינני יודע מה קורה כשמגיעים לשם. אולי אחרים פה כן יודעים.

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

    תודה

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    אם ההודעה של illegal directory באה מהגיבויים יתכן שגיבויי לוג לא מצליחים.
    ואם אין גיבויי לוג יתכן וקבצי הלוג מתנפחים.
    כדאי לבדוק ולטפל בזה, לדעתי.
    לא שזה קריטי כי מדובר במערכת פיתוח אבל כדאי לא להכנס להתמודדות בבעית דיסק מלא.
      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    סליחה עוד לא הצלחתי לראות את הנוסחה שלך

    אבל לגבי "לא יציג את ההזמנות" וכו' – ודאי אפשרי

    תנסה לנסח את הדרישה בתור מה הדו"ח כן יציג (כמה אפשר) – אם כותבים בתור אלה פחות אלה פחות אלה התנאים מתחילים מהר להיות מסורבלים.

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    חנן בוקר טוב

    תרשה לי לענות בגישה שלי כ"מוליך" במקום "משיב"

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

    ז"א ORDSTATUSDES לא יכול להיות גם X וגם Y וגם Z בו זמנית. איך תנאי עובד? על כל שורה לחד בודקים האם השורה עונה לדרישות. לכן אם הדו"ח צריך להציג אלה עם סטטוס X ואלה עם Y ואלה עם Z התנאי צריך להיות שבשורה זו הסטטוס הוא או X או Y או Z. תוכל להוסיף שבנוסף לזה (AND) מעניינים אותנו רק שורות בהן STATDES הוא או X או Y או Z.

    לגבי איפה לרשום – אם משתשמים בעמודה שאתה מזכיר יש בעיה שאתה רוצה (A = X או A = Y או A = Z) וגם (B = a או B = b או B = c)
    לרשום את זה בעמודה של A בלתי אפשרי כי החלק של "A" כבר קיים ויש לך מקום רק ל- " = X" ואז איך תסובב בסוגריים בצורה הנדרשת.

    יש לך 2 פתרונות
    הפשוט יותר במקרה זה זה להשתמש ב-IN במקום כל ה-OR
    אתה יכול לכתוב בצורה
    [code:1]A IN (X,Y,Z)[/code:1]
    (כמובן אני לא מדייק בסינטקס של גרשים וכו')
    ואז מספיק להוסיף בשדה "תנאי" כך
    [code:1]IN (X,Y,Z) OR B IN (a,b,c)[/code:1]
    אין לך בעיה של סוגריים

    כדי להציג פתרון למקרים יותר מורכבים
    עוזבים את העמודות שיש ומוסיפים עמודה של DUMMY מטבלת DUMMY
    בביטוי מתחילים ב-
    [code:1]= 1 AND[/code:1]
    שיתן לנו תנאי שהוא לבד תמיד TRUE ולאחר מכן אפשר (כדאי בתוך סוגריים) לשים איזה תנאים שרוצים.
    יש יתרון נוסף שכשרואים בדו"ח עמודת DUMMY.DUMMY יודעים שהוא מסתיר תנאי מורכב. אם שמים העמודה רגילה אולי לא נחשוב שיש שם התייחסות ליותר עמודות מאשר הזה שרואים שם ברשימת העמודות.

    מקווה שזה שופך לך (ולאחרים בע"ה) קצר אור בנושא

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    תנסה תוכנה אחרת. כאמור אני יכול לומר ש-pdfcreator עובדת יפה אצלנו. תראה אם התוצאות אצלך יותר טובות ממה שאתה עושה עכשיו.

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

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    Lior כתב:

    תמסה לעבוד ב sa או להתחבר לwindows עם administrator ולהתחבר ל SQL ב Windows authntication.

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

    הערת אגב:
    לא הייתי ממליץ לתת הרשאות אלה ל-tabula כך שיהיה שווה ל-sa כי הסיסמה של tabula עלולה להיות יותר חשופה מאשר אלה של sa או administrator. שים לב גם שבין משתמשי הפריוריטי רק סיסמה של tabula טוב לגישה ישירה ל-sql server. כל זה בכוונה לצמצם סיכויים באבטחת נתונים.

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    roni כתב:

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

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

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

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

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    נכון, בדקתי אצלי וראיתי ששיטת הDAYS חשובה. תודה למארק

    להנאתכם להלן הרכיבים של המתכון

    צריכים להביא את DAYS
    DAYS.DAYNUM BETWEEN 0 AND 1
    מיון ראשון לפי צרכי הדו"ח
    מיון אחד לפני האחרון – DAYS.DAYNUM
    מיון אחרון – TEXTORD של טבלת הטקסט
    לא קשרים עמודת טקסט בחיתוך רגיל אלא מכפילים את הערך של טבלת האם בDAYNUM לדוגמה ב-DOCUMENTSTEXT נשים בעודת DOC
    [code:1]= (DAYS.DAYNUM * DOCUMENTS.DOC)[/code:1]
    או
    [code:1]= (DAYS.DAYNUM = 0 ? 0 : DOCUMENTS.DOC)[/code:1]

    מביאים עמודת TEXTLINE (מוסתרת) ושמים ביטוי כזה
    [code:1]= (DAYS.DAYNUM * DOCUMENTSTEXT.TEXTLINE)[/code:1]
    או
    [code:1]= (DAYS.DAYNUM = 0 ? 0 : DOCUMENTSTEXT.TEXTLINE)[/code:1]

    והכי חשוב
    בעמודת הטקסט צריכים (דוגמה מ-DOCUMENTSTEXT כמובן)
    [code:1](DAYS.DAYNUM = 0 ? " : DOCUMENTSTEXT.TEXT)[/code:1]
    זה ישאיר שורה ריקה מעל הטקסט. אפשר לנצל את המקום ולהעביר לשם שדה טקסט אחר שיש בדו"ח אם רוצים.

    מקווה שזה יעזור

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    אני עכשיו מנסה לזכור אם מעולם הצלחתי להקים דו"ח בצורה זה
      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    yitzchok
    משתתף
    IL
    OK הסתכלתי ב-prep.err ואלה מסקנותיי. תגיד אם הן נכונות

    1. לא ביצעת שום שינוי בטבלת DOCUMENTSTEXT
    2. יש לך מסך BAL_FREETEXT שמבוסס על DOCUMENTSTEXT
    3. במסך הנ"ל יש לך עמודת TEXT
    4. בביטוי לעמודה זו כתוב
    [code:1]- :$.DOC[/code:1]

    אם כן

    4 גורם לך לשגיאה (בגלל שTEXT היא עמודת טקסט – ביטוי זה צריך להיות על DOC)
    בכל זאת אני מציע למחוק ולהתחיל מחדש בשיטה שתיארתי

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
מוצגות 15 תגובות – 2,386 עד 2,400 (מתוך 2,454 סה״כ)