Forum Replies Created
- Replies
-
- אוקטובר 22, 2021 בשעה 10:21 am
- in reply to: כמה מסכי יעד לשדה אחד
לאחר שהגדרנו את כל השדות הנדרשים, אנחנו מגיעים אל העיקר.בשדה שמציג את מספר התעודה, נכנסים למסך הבן "עמודות הדו"ח – הגדרות HTML" וללשונית "שדות קלט והפניות". בשדה "סוג שדה קלט" רושמים P. בשדה "שם ערך חזרה" רושמים winform_ (הקו התתון בצד שמאל ואחר כך אותיות קטנות). בשדה "עמודת ערך חזרה" רושמים את מספר השדה שמכיל את EXEC.ENAME. כנ"ל בשדה "עמודה שמגדירה פרוצדורה".
אם הכל בסדר, יופיע קו כחול מתחת למספר התעודה בדו"ח.
בהצלחה!
- אוקטובר 22, 2021 בשעה 10:17 am
- in reply to: כמה מסכי יעד לשדה אחד
המשך: מגדירים שדה נסתר, EXEC.ENAME, עם מפתח מיון 9. לשדה הזה יהיה ביטוי בסגנון
<p style="text-align: right;">= (STACK8.KEY1 = 1 ? 'ORDERS' : (STACK8.KEY1 = 2 ? 'DOCUMENTS_D' : …</p>
או במילים, אם KEY1 = 1, אזי ENAME יהיה ORDERS, ואם KEY1 = 2, אזי ENAME יהיה DOCUMENTS_D וכו'. אלה שמות מסכים.שדה נסתר נוסף, EXEC.TYPE, עם ביטוי = 'F'. יש לפחות שתי שורות בטבלת EXEC עם שם ORDERS: אנחנו רוצים את השורה של המסך, לכן F. ללא השדה הזה, יופיעו אותם נתונים יותר מפעם אחת בדו"ח.
עוד מכתב אחד…..
- אוקטובר 22, 2021 בשעה 9:57 am
- in reply to: כמה מסכי יעד לשדה אחד
המשך: לכל ישות צריך להיות שדה עם שם מפתח ה-A (לדוגמא ORDERS.ORD) כאשר הביטוי לשדה הזה יהיה = (STACK8.KEY1 = 1 ? STACK8.KEY2 : 0)לכל ישות יהיה אותו הביטוי, תוך כדי שינוי של STACK8.KEY1
- אוקטובר 22, 2021 בשעה 9:46 am
- in reply to: כמה מסכי יעד לשדה אחד
הסבר יותר מלא לגבי דו"חות: כאן אני מניח שהדו"ח מוצג כשלב שני מתוך פרוצדורה. אני משתמש ב-STACK8 לדו"חות "מעורבבים" כאשר יש צורך להציג נתונים מיותר מישות אחת. ב-KEY1 אני שומר מספר שמבדיל בין הישויות (נניח 1 = הזמנות לקוח, 2 = תעודות משלוח, 3 = הזמנות רכש וכד'). ב-KEY2 אני שומר את ערך מפתח ה-A. כתוצאה מכך, אפשר לשמור הפניות גם להזמנה מספר 1 וגם לתעודת משלוח מספר 1.עכשיו בדו"ח: יש שדה שמציג את מספר התעודה. ערכו יהיה תלוי בערך שנמצא ב-KEY1 לכן כותבים ביטוי STACK8.KEY1 = '1' : ORDERS.ORDNAME : DOCUMENTS.DOCNO
רצוי לשים סוגריים מסביב לביטוי כולו. אם יש יותר משתי ישויות, אז צריך להיות משפט יותר מורכב.
- אוקטובר 22, 2021 בשעה 9:40 am
- in reply to: כמה מסכי יעד לשדה אחד
עבר דו"ח, כתבתי (באופן חלקי ובאנגלית) כאן: https://progpitfalls.blogspot.com/2021/05/conditional-opening-of-form-from-report.html- אוקטובר 22, 2021 בשעה 9:39 am
- in reply to: כמה מסכי יעד לשדה אחד
עבור מסך: כתבתי על כך (באנגלית) כאן: https://progpitfalls.blogspot.com/2021/08/defining-dynamic-target-form-name-for.html- אוקטובר 22, 2021 בשעה 9:01 am
- in reply to: כמה מסכי יעד לשדה אחד
ניסיתי לכתוב תשובה ארוכה אבל כל פעם האתר הזה לא שומר את מה שכתבתי.האם מדובר במסך או בדו"ח? – יש הבדלים.
- אוקטובר 21, 2021 בשעה 7:58 am
- in reply to: סריקה של נספחים
הנה הנתיב למסך בו מגדירים סטטוסים לחשבוניות מס: כספים > מכירות (כספים) > חשבוניות מכירות > חשבוניות מס > ניהול תהליך לחשבונית מס.תמצא את הסטטוס "סופית" ותלחץ לחיצה ימנית עליו. מהתפריט שמופיע, תבחר מאפיינים. תופיע רשימה שלמה של אפשרויות (דגלים, בלשון מתכנתים). יש אפשרות אחת בשם "שינוי נספחים בת.סופית" ותסמן אותו. תאשר את השינוי ותצא מהמסך. הסימון הזה מאפשר שמירת נספחים לחשבונית, אפילו אם היא סגורה.
יש מסך מקביל "ניהול תהליך לחשבונית מרכזת".
- אוקטובר 20, 2021 בשעה 2:45 pm
- in reply to: הוספת לשונית
פיתוח …….אל תקרא לזה "לשונית" אלא "מסך בן". לשוניות נמצאות במסך כותרת, כמו "פרטים כלליים" במסך "כרטיס פריט"?
- אוקטובר 18, 2021 בשעה 6:32 pm
- in reply to: שליפה אוטומטי של נתוני העובד בפתיחת מסך
בטבלה שעליה בנוי מסך הנוכחות, אני משער שיש שדה USER או USERB. כדי לגרום לכך שכל משתמש יראה רק את הנתונים שלו, לשדה USER יהיה ביטוי SQL.USER. זה אומר שכל רשומה שתיקלט תכיל את מספר המשתמש הנוכחי וגם בשליפת נתונים, רק הרשומות השייכות למשתמש הנוכחי יישפלו.יצחק כתב על השדה TYPE במסך DOCUMENTS_D שממלא את אותו התפקיד (גם בכל המסכים ששמם מתחיל ב-DOCUMENTS).
קצת יותר מסובך לגבי USERB. כאן נראה לי שצריך להכניס שאילתא קצרה בהפעלה PRE-FORM, בסגנון SELECT USERB INTO :MY_USER FROM USERSB
WHERE USER = SQL.USER;
הביטוי בשדה USERB יהיה MYUSER:.
- אוקטובר 18, 2021 בשעה 8:21 am
- in reply to: טבלת Canledar
יצחק כתב: "פשוט תעשה לולאה בקוד מערך ראשון עד ערך אחרון ותבצע INSERT). כך יהיה תמיד הטווח הנדרש". אני אומר שאין צורך בלולאה: כתבתי פרוצדורה לפני כשבועיים בה דו"ח צריך להעביר אל דו"ח רק טווח תאריכים (הדו"ח נשלח אוטומטית דרך דואר לכן אין אפשרות לקלט) והגדרתי את התאריכים כךINSERT INTO STACK2 (ELEMENT, TYPE)
VALUES (:$.FDT, :$.TDT)בדו"ח עצמו, בשדה התאריך, יש ביטוי BETWEEN STACK2.ELEMENT AND STACK2.TYPE
- אוקטובר 17, 2021 בשעה 8:28 am
- in reply to: שימוש ב KEYSTROKES
מסך פרטי עם כל התנאים מובנים?- אוקטובר 13, 2021 בשעה 1:31 pm
- in reply to: שימוש ב KEYSTROKES
אני מציע לעזוב את KEYSTROKES וללכת בכיון של שליפה קבועה שתופעל אוטומטית בעת הכניסה למסך. אמנם אי אפשר להגיע לנתונים במסך בן בדרך הזו אבל היא הרבה יותר פשוטה וישימה.מה גם – KEYSTROKES או הפעלת PRE-FORM פועלת עבור כולם. לעומת זאת, שליפה מחדלית מוגדרת ברמת המשתמש.
- אוקטובר 12, 2021 בשעה 2:30 pm
- in reply to: שינוי סדר שורות במסכי מערכת
יש מסכים – כמו לדוגמא שורות הזמנת לקוח – בהם ניתן לקבוע את השדה ע"י שינוי מספר השורה שמוצג. מעבר לכך אין דרך ובדרך כלל אין גם חשיבות לסדר שורות בתוך מסמך. אם יש חשיבות לסדר – צריך לרשום את הנתונים לפי הסדר הרצוי.- אוקטובר 12, 2021 בשעה 2:28 pm
- in reply to: תיאור מוצר של כל חשבונית הספק
בפריט כללי (נניח 000), הדגל "שינוי תאור" מסומן, אשר אומר שבשורות תעודה (כמו הצעות מחיר, הזמנות וחשבוניות) ניתן לרשום תאור ספציפי לאותה שורה. נרשמים ערכים מזהים (מלל, מספר שורה, סוג תעודה) לתוך טבלה NONSTANDARD ומשם ניתן לשלוף.