הכנסה למשתנה ממסך אב (יש כמה מסכי אב שונים)

פורומים אפיון ופיתוח פריוריטי הכנסה למשתנה ממסך אב (יש כמה מסכי אב שונים)

  • Post
    snoof123
    משתתף
    היי לכולם,
    כשאני מנסה לעשות POST FIELD למשתנה ממסך האב (ויש לי כמה מסכים שונים באב) אז יש בעיה כי המערכת לא יודעת לאיזה מסך ללכת כשאני מכניס :.$$

    ראיתי שאפשר לעשות ככה:
    :FORMNAME.COLUMN_NAME

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

    תודה לעוזרים 🙂

מוצגות 8 תגובות – 1 עד 8 (מתוך 8 סה״כ)
  • Replies
    בעת הפעלת מסך יש לו רק אבא אחד וזה האבא שאליו מפנה ה- :$$.

    חוץ מזה, לא הצלחתי להבין לגמרי את הבעיה אז נסה לתאר את הבעיה באופן יותר ברור לעזרה יותר מוגדרת.

    snoof123
    משתתף
    תודה על המענה, אני אחדד:

    יש מסכים מסוימים שיש להם כמה מסכי אב.

    לדוגמא: PARTARC (מסך)
    יש לו שני מסכי אב:
    1. כרטיס פריט (LOGPART)
    2. מוצרים (PART)

    עכשיו כשאני נמצא בPARTARC ורוצה לעדכן משתנה ממסך האב אני רוצה להגדיר שהשינוי הוא עבור עמודה שקיימת במסך LOGPART ולא במסך PART

    נניח שהעמודה קיימת בשני המסכים (עם אותו שם עמודת מסך)

    אלמוני
    אורח
    אני ממליץ לך לשמור ערך כלשהו במשתנה פרטי בהפעלה PRE-FORM פרטית (רצוי עם שם XXXX_PRE-FORM, כך ההפעלה מתבצעת אחרי ה-PRE-FORM הסטנדרטית).
    נניח ב-PART, תשמור ערך 1 (או "PART") במשתנה וב-LOGPART, תשמור ערך 2.
    snoof123
    משתתף
    היי נעם, תודה על המענה אך לצערי לא כ"כ הבנתי מה הכוונה..

    האם אין דרך פשוט לגשת למשתנה במסך אב כשאני מגדיר את שם מסך האב אליו אני רוצה לפנות?

    נניח כשאני פונה לטבלה ספציפית אני עושה DOCUMENTS.CUST

    אלמוני
    אורח
    פריוריטי פותרת את הבעיה ע"י מתן אותו שם לשדות שונים. כדוגמא, תסתכל על מסך EXTFILES – הוא מתיחס לשדה בשם :$$.NSCUST (בהפעלה PRE-INSERT) ומצפה שבמסך האב מפתח הטבלה של האב יהיה בשדה בשם NSCUST.

    אתה חייב לעשות משהו דומה (להגדיר גם ב-PART וגם ב-LOGPART את אותו משתנה מסך) אחרת בדיקת תחביר לא תצליח. נניח שהגדרת שדה SNOOF ב-PART ובהפעלה פרטית ב-PARTARC, אתה מתיחס ל- :$$.SNOOF. לא תצליח לבנות את המסך LOGPART מפני שהשדה הנדרש אינו נמצא.

    במכתב המקורי, כתבת שראית שימוש בצמד – איפה זה היה?

    snoof123
    משתתף
    לשאלתך: SDK 14 עמוד 44 (הארד קופי), 51 (PDF).
    CHAPTER 3: FORMS

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

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

    אלמוני
    אורח
    לפי מה שכתוב ב-SDK (יש לי גרסה 17.1, לכן מדובר בעמוד 46):
    אנחנו בדרך כלל משתמשים בכתוב כמו NSCUST.$$:

    כדי להתיחס לשדה NSCUST במסך האב. אבל במקום להשתמש ב-$ כקיצור דרך ($ = המסך הנוכחי, $$ = מסך האב), נראה שניתן לכתוב

    :LOGPART.NSCUST

    כתוב גם

    That is, begin with a colon, followed by the name of the upper-level form, a period, and finally the name of the column in the upper-level form to which the linkage is made (e.g., :ORDERS.ORD).

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

    snoof123
    משתתף
    כן חח, אז זה לא פועל לי ולכן שאלתי אם מישהו הצליח כדי שיתן לי טיפ 🙂

    תודה בכל זאת על כל הניסיונות לעזור

מוצגות 8 תגובות – 1 עד 8 (מתוך 8 סה״כ)
  • יש להתחבר למערכת על מנת להגיב.