NoamN

Forum Replies Created

מוצגות 15 תגובות – 61 עד 75 (מתוך 442 סה״כ)
  • Replies
  • NoamN
    משתתף
    none
    אפשר אבל רק באמצעות פיתוח. נדרשת הפעלת PRE-INSERT ברשומת השורה שסוכמת את כמות הפריט בשורה הנוכחית עבור הלקוח הנוכחי "היום", ואחר כך בדיקה שהכמות הזו לא גוברת על ההגבלה.

     

    NoamN
    משתתף
    none
    אני מנסה להדפיס תשובה אבל האתר כל פעם דוחה את מה שאני כותב. תיעדתי לעצמי את התליך באנגלית לפני שנה באתר https://progpitfalls.blogspot.com/. צריך לחפש את mail merge
    NoamN
    משתתף
    none
    האם אתה מתכוון למולל המכתבים? קשרי לקוחות > ניהול קשרי לקוחות > מחולל מכתבים
    NoamN
    משתתף
    none
    אנחנו רק יכולים לזרוק רעיונות כל עוד לא רואים את הגדרות הדו"ח עצמו.

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

    NoamN
    משתתף
    none
    שאלה טיפשית – #18 זה המזהה הנכון? זאת אומרת, לא "מיקום" אלא "מספר עמודה"?
    NoamN
    משתתף
    none
    לדעתי הטירגר צריך להיות ברמת החשבונית (כפי שכתבתי בהתחלה), לא בהזמנה.

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

    NoamN
    משתתף
    none
    תקרא את הקטע Creating a Printout of a Document בפרק 15 של ה-SDK. לי נראה להדפיס משהו (פיזית) כקצת מסוכן – איך קובעים לאיזו מדפסת? אולי לא ימצאו את המסמך אחר כך?
    NoamN
    משתתף
    none
    אני לא יודע איך את שומרת את הנתונים בין שלב הפרוצדורה לבין שלב הדו"ח, אבל נניח שאת משתמשת ב-STACK8 כאשר KEY1 מכיל את התאריך ו-KEY2 מכיל את מספר ההזמנה. תכניסי רשומה לתוך STACK8 עבור כל יום, אם או בלי הזמנות (זאת אומרת, במקרה כזה, KEY1 = 22/12/21 ו-KEY2 = 0).

    כך תקבלי את הימים ללא הזמנות.

    יהיה יותר מסובך אם את משתמשת ב-STACK4 : מן הסתם KEY יהיה מספר ההזמנה. תשמרי ימים ללא הזמנה עם KEY = -DATE, אבל זה יסבך מאד את הדו"ח.

    NoamN
    משתתף
    none
    חלופה נוספת: האם אפשר לערוך את הממשק כך הנספח ייכנס לחשבונית בנוסף להזמנה, או אפילו רק לחשובנית?

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

    טעיתי קצת לגבי שם השדה – צריך לכלול EXTFILENAME – פרק 3 ב-SDK
    <p style="text-align: left;">In order for a form column to be defined as an attachment column, it must be of CHAR type and the form column name must contain the string EXTFILENAME (e.g., PRIV_ EXTFILENAME).</p>

    NoamN
    משתתף
    none
    שם השדה צריך לכלול את "FILENAME", אבל לא הייתי רוצה להמליץ לך לעשות מה שתכננת. יותר טוב להוסיף הפעלה אשר תעתיק את הנספח מההזמנה אל הנספחים של החשבונית.

    למטה מופיע קוד להפעלת POST-INSERT במסך CINVOICES (זאת אומרת, הנספחים מועתקים מתעודת משלוח ולא הזמנה, אבל הרעיון אותו הדבר)

    DECLARE @GPIX CURSOR FOR
    SELECT EXTFILENAME, EXTFILEDES
    FROM EXTFILES
    WHERE IV = :$.DOC
    AND TYPE = 'D';
    OPEN @GPIX;
    GOTO 300 WHERE :RETVAL <= 0
    ;
    SELECT COUNT (*) INTO :COUNT
    FROM EXTFILES
    WHERE IV = :$.IV
    AND TYPE = 'I';
    LABEL 100;
    FETCH @GPIX INTO :EF, :ED;
    GOTO 200 WHERE :RETVAL <= 0;
    :COUNT = :COUNT + 1;
    INSERT INTO EXTFILES (IV, TYPE, EXTFILENUM, EXTFILENAME,
    EXTFILEDES, CURDATE, UDATE, USER, EI_COND)
    VALUES (:$.IV, 'I', :COUNT, :EF, :ED, SQL.DATE8, SQL.DATE,
    SQL.USER, 'Y');
    LOOP 100
    ;
    LABEL 200;
    CLOSE @GPIX;
    LABEL 300;

    • in reply to: תג PDF
    NoamN
    משתתף
    none
    יש אפשרות תכנותית ליצור קובץ PDF ממסמך HTML (נמצא בפרק 15 של ה-SDK).

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

    https://progpitfalls.blogspot.com/2020/05/appropriating-html-document-framework.html

    NoamN
    משתתף
    none
    עבור השדה הריק, תשתמש ב"רווח קשה" של HTML,

    &nbsp; (זה הפוך: ה-& צריך להיות בצד שמאל וה-; בצד ימין. נדמה לי שהוא נמצא ב-WWWDOC

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

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

    הסתייגות: מה שאני רושם בהמשך נועד למשתמש בעל נסיון בניהול פריוריטי!

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

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

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

    NoamN
    משתתף
    none
    מוטב לשכוח ממה שכתבתי קודם.

    נניח שבשלב 10 לפרוצדורה יש פרמטר FLG שמוגדר סוג CHAR, אורך 1. במסך הבן "פרמטרים לפרוצדורה – הרחבה" מסומן Y בשדה "סוג". ההגדרות הללו יתנו שדה בוליאני.

    עכשיו לערך המחדלי: בשלב קודם לפרוצדורה (נניח שלב 9), שם ישות SQLI, תרשום בגוף השלב

    :DEFAULT = 'Y'

    (כרגיל יוצא משובש כאן: צריך להיות משתנה כמו DEFAULT עם נקודותיים בצד שמאל שלו, כאשר הערך שלו Y). עכשיו בשלב 10, בשורה של FLG יש לרשום את :DEFAULT (שם המשתמש שהוגדר קודם) בשדה "ערך". כיון שהערך מגיע ממשתנה שמוגדר מראש, הערך הזה יהיה מחדלי.

    יש דוגמא (אמנם לא שדה בוליאני אבל זה לא משנה) בפרוצדורה DELPART – בשלב 7 מוגדר ערך למשתנה והוא מופיע בקלט בשלב 8.

    • התגובה הזו עודכנה לפני לפני 3 שנים, 10 חודשים ע"י NoamN.
    NoamN
    משתתף
    none
    כרגע נראה לי בלתי אפשרי: המפתח נמצא בשדה "סוג" במסך הבן "פרמטרים לפרוצדורה – הרחבה". מצד אחד צריך לסמן כאן Y כדי לקבל שדה בוליאני ומצד שני צריך לסמן d לקבל ערך מחדלי שמוגדר בשלב קודם כלשהו. ברור שהשדה לא יכול לקבל שני ערכים בו זמנית.
מוצגות 15 תגובות – 61 עד 75 (מתוך 442 סה״כ)