הפעלת פרוצדרות LABELS לא עובדת

פורומים אפיון ופיתוח פריוריטי הפעלת פרוצדרות LABELS לא עובדת

  • Post
    tal raz
    משתתף
    שלום רב,

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

    במסך החלונאי הכול עובד, אבל בוובי הוא מכניס למשטח אך מסרב להדפיס.

    השורה הרלוונטית EXECUTE ACTIVATF '-P', 'LABELS';

     

    תודה מראש

     
    <p style="direction: ltr;"></p>

מוצגות 5 תגובות – 1 עד 5 (מתוך 5 סה״כ)
  • Replies
    babun
    משתתף
    היי

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

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

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

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

    לדעתי אין מנוס מלממש את זה כפרוצדורה/הפעלה ישירה.

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

    בהצלחה!

     

     

     

    tal raz
    משתתף
    היי, משהו לא ברור לי בתשובתך.

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

    אני צריך לבנות הפעלה ישירה?

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

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

    יש לי הצעה אחרת: תבנה פרוצדורה רגילה שמקבלת מספר מזהה (לא ציינת מאיזה מסך אתה מדפיס, אבל זה יכול להיות מספר הזמנה או משהו דומה) בפרמטר PAR ומבצעת את כל מה שנדרש, כולל הפעלת LABELS בשלב נפרד. בטריגר המסך, תפעיל את הפרוצדורה הזו בשיטה הבאה

    SELECT SQL.TMPFILE INTO :TMPORDERS FROM DUMMY;
    LINK ORDERS TO :TMPORDERS;
    GOTO 999 WHERE :RETVAL <= 0;
    INSERT INTO ORDERS
    SELECT * FROM ORDERS ORIG
    WHERE ORD = :$.ORD;
    EXECUTE WINACTIV '-P', 'your procedure name', 'ORDERS',
    :TMPORDERS;
    UNLINK ORDERS;

    tal raz
    משתתף
    תודה נועם
    yoram
    משתתף
    שלום טל,

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

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