› פורומים › אפיון ופיתוח פריוריטי › הוספת תאור תיקון בדוח פרוט קריאות
- This topic has 17 תגובות, 2 משתתפים, and was last updated לפני שנה 1, חודש 1 by ליאורה בן-עזרא.
- Post
-
- נובמבר 16, 2023 בשעה 1:17 pm
בדוח פירוט קריאות שרות, איך מוסיפים גם תאור תיקון בנוסף לתיאור תקלה.לא מצליח גם לאחר שליפה הטקסט ממזהה שונה- מטבלה DOCUMENTSTEXT.TEXT
הקישור לDOCUMENTS – תיאור תקלה – DOC*-1 ותיאור טיפול: DOC
מציג את התגיות של HTML – כאשר קיים גם תאור תקלה וגם תיאור טיפול.
אשמח להסבר כיצד להציג בדוח רגיל.
- Replies
-
- נובמבר 26, 2023 בשעה 9:54 am
ניסיתי זאת כמה פעמים בעבר ולעניות דעתי בלתי אפשרי בדו"ח רגיל אלא רק במסמך HTML.אפשרות אחרת: לכתוב שלב SQLI בו קודם מעתיקים נתונים מסוג אחד לטבלה מלונקקת ועל הטבלה הזו מריצים את DELHTML (לחפש את Removing HTML Tags from a Text Table בפרק 3 של ה-SDK). אחר כך מעתיקים את המלל מהטבלה הזו לטבלה בנויה על STACK8, כאשר אחד המפתחות יהיה מספר הקריאה והמפתח השני יהיה מספר רץ. אחר כך חוזרים על כל התהליך עבור הסוג השני של מלל (עם DOC שלילי), בסוף שומרים את הנתונים עם STACK8.KEY1 שלילי.
דו"ח במבוסס על הטבלה הזו יקבל מצד אחד את מספר הקריאה ומצד שני את המלל, הן של תאור התקלה והן של תאור התיקון. מסובך אבל ישים.
- נובמבר 26, 2023 בשעה 9:25 pm
היי,תודה על המענה.
בשלב הראשון – למה בדיוק התכוונת – לאיזו טבלה ראשונה להעתיק?
בשלב השני STACK8 – אין שדה של טקסט – איך אפשר להעביר לשם את המלל?
צריך להעתיק שדה LINE של השורות או ORDLINE?
אם אפשר לקבל הסבר
- נובמבר 27, 2023 בשעה 8:37 am
צריך לבצע לינק לטבלת DOCUMENTSTEXT כי זו הטבלה שמכילה את המלל.מזמן הוספתי שדה מלל באורך 68 תווים ל-STACK8 – במיוחד למקרים כאלה.
אפשר לשמור את ORDLINE בתוך STACK8.KEY2 אבל לא נדרש: השורות תהיינה בסדר הנכון לכן ניתן להשתמש גם ב-SQL.LINE
- נובמבר 27, 2023 בשעה 8:57 am
היי,תודה.
אצלנו לא קיים שדה הטקסט – אולי אוסיף
הכוונה שבסוף – בstack8 יהיו 2 שדות טקסט – אחד של תאור תקלה והשני תאור טיפול עם שני מפתחות שהם מס' קריאה ומס' שורה?
- נובמבר 27, 2023 בשעה 9:20 am
ב SDK קיימת הדוגמא להלן:
<p style="text-align: left;">INSERT INTO PARTTEXT SELECT * FROM PARTTEXT ORIG WHERE PART = :PART AND TEXT <> ''; /* Don't insert empty lines into the link table */ UNLINK PARTTEXT; /* text with HTML tags */ SELECT TEXT FROM PARTTEXT WHERE PART = :PART FORMAT; EXECUTE DELHTML 'PARTTEXT', :TXT;</p>
בתחילה מעתיקים את שורות הטקסט מהאורגינל לטבלה המלונקקת , אבל בסוף מבצעים UNLINK – כלומר ,בשורה הבאה כאשר מריצים הורדה של HTML – מבצעים על הטבלה המלונקקת למרות שבוצע בשורה קודם UNLINK – וגם רשום שמבוצע ל TXT:רוצה לברר , כדי שלא יהיה בלבול ויבוצע ניקוי על הטבלה המקורית..מבלבל
אשמח לסבר ,
תודה מראש
- נובמבר 27, 2023 בשעה 9:21 am
נדרש רק שדה אחד טקסט ארוך ב-STACK8. לא תהיה כפילות בין התקלה והתיקון מפני שלאחד יהיה KEY1 חיובי והשני שלילי. יחד עם זאת, יידרש קצת תחכום בדו"ח כדי להציג אחד אחרי השני.אם זה לא נראה לך, אפשר לעבור ל-STACK11 שיש לו שלושה מפתחות (וגם תו כמפתח אבל כמעט ולא השתמשתי בו). KEY1 יהיה מספר התעודה, תמיד חיובי, KEY2 יהיה 1 או 2 (או מספרים אחרים) כדי להבדיל בין תקלה ותאור, ו-KEY3 יהיה מספר שורה. נדמה לי שצריך להוסיף גם כאן שדה טקסט ארוך.
- נובמבר 27, 2023 בשעה 11:45 am
"רוצה לברר , כדי שלא יהיה בלבול ויבוצע ניקוי על הטבלה המקורית..מבלבל"התכנית החיצונית DELHTML מקבלת פרמטר TXT, שמכיל את שם הקובץ איפה שנשמר העתק של הנתונים. אין נגיעה בטבלה המקורית במסד הנתונים.
- נובמבר 27, 2023 בשעה 12:44 pm
אם אפשר הבהרה נוספת.המטרה של הדוח להציג קריאות בין תאריכים, כך ששלב ה SQLI , הגדרתי CURSOR לשלוף את כל הקריאות בטווח המבוקש
וב LOOP בשליפה הכנסתי את העתקת הטקסט של קריאה לטבלה המלונקקת – כדי לבדוק אם עבד בצעתי DEBUG אבל מציג לי את כל הקריאות בקובץ – היכן טעיתי?
<p style="text-align: left;">SELECT SQL.TMPFILE INTO :TXT FROM DUMMY;
LINK DOCUMENTSTEXT TO :TXT;
GOTO 99 WHERE :RETVAL <= 0;
/** insert service call text doc **/
DECLARE SRVC CURSOR FOR
SELECT DOC FROM DOCUMENTS WHERE DOC <> 0
AND CURDATE BETWEEN :$.FDT AND :$.TDT ;
OPEN SRVC;
GOTO 99 WHERE :RETVAL <=0 ;
LABEL 10;
:DOC = 0 ;
FETCH SRVC INTO :DOC;
GOTO 9999 WHERE :RETVAL <= 0 ;
INSERT INTO DOCUMENTSTEXT SELECT * FROM DOCUMENTSTEXT ORIG
WHERE DOC = :DOC AND TEXT <> " AND TEXTLINE > 0 ;
/* Don't insert empty lines into the link table */
LOOP 10;
LABEL 9999;
CLOSE SRVC;
/***CHECK **/
UNLINK DOCUMENTSTEXT;
LINK DOCUMENTSTEXT TO :TXT;
GOTO 99 WHERE :RETVAL <= 0;
SELECT * FROM DOCUMENTSTEXT TABS 'C:\TMP\LTXT.TXT';</p>
בשורה האחרונה – מציגה מה יש בטבלה לאחר הLOOP -מצפה לראות רק את הקריאות שעמדו בקריטריון התאריך אבל מציג את כולםהאם צריך לבצע קודם UNLINK ? או אח"כ האם צריך להגדיר שוב LINK ל TXT – שם אמורה להיות הטבלה המצומצמת של הקריאות הנבחרות
תודה מראש
- נובמבר 27, 2023 בשעה 1:43 pm
יש כמה בעיות עם הקוד שלך. הקורסור יקח כל רשומה בטבלת DOCUMENTS בטווח התאריכים – צריך להוסיף שני תנאים על TYPE ו-FINAL. הקוד שמכניס את המלל לתוך DOCUMENTSTEXT יכניס רק ערכים חיוביים של DOC ולא שליליים. הסוף די מבולגן.
אוסיף את מה שאני חושב שצריך להיות הקוד במכתב נפרד, במקרה והאתר מסרב לקבל.- נובמבר 27, 2023 בשעה 1:43 pm
LINK DOCUMENTSTEXT TO :$.TXT;
GOTO 300 WHERE :RETVAL <= 0;
LINK STACK8 TO :$.STK;
GOTO 300 WHERE :RETVAL <= 0;
DECLARE C1 CURSOR FOR
SELECT DOC
FROM DOCUMENTS
WHERE TYPE = 'Q'
AND CURDATE BETWEEN :$.FDT AND :$.TDT
AND FINAL = 'Y'
AND DOC > 0;
OPEN C1;
GOTO 300 WHERE :RETVAL <= 0;
LABEL 100;
FETCH C1 INTO :DOC;
GOTO 200 WHERE :RETVAL <= 0;
INSERT INTO DOCUMENTSTEXT
SELECT * FROM DOCUMENTSTEXT ORIG
WHERE DOC IN (:DOC, (-1) * :DOC)
AND TEXT <> ";
LOOP 100;
LABEL 200;
CLOSE C1;
UNLINK DOCUMENTSTEXT;
EXECUTE DELHTML 'DOCUMENTSTEXT', :$.TXT;
LINK DOCUMENTSTEXT TO :$.TXT;
INSERT INTO STACK8 (KEY1, KEY2, TEST_TEXTFIELD)
SELECT DOC, SQL.LINE, TEXT
FROM DOCUMENTSTEXT
WHERE DOC > 0;
LABEL 300;
UNLINK DOCUMENTSTEXT;
UNLINK STACK8;- נובמבר 27, 2023 בשעה 1:45 pm
אני לא יודע אם ה-UNLINK לפני DELHTML וה-LINK לאחר מכן נדרשים. נראה לי מיותר אבל אי אפשר לדעת מבלי לנסות.- נובמבר 27, 2023 בשעה 2:12 pm
תודה רבה, אנסה- נובמבר 27, 2023 בשעה 3:26 pm
בדוח עצמו לא מסתדר, הגדרתי בהתחלה תאור טיפול:מציג כפול את השורה הראשונה, השדה של הטקסט הוגדר כקיבוץ – לא ממש עזר.
<p style="text-align: left;"> test_text stack8</p>
<p style="text-align: left;">stack8 key1 documents doc</p>
<p style="text-align: left;">stack8 key2 >0</p>
שניסיתי להוסיף את תאור התקלה ע"י הוספת זיהוי לאותו קובץ וחיבור ל מינוס של DOCיצא דוח ריק
אשמח לעזרה גם כאן
- נובמבר 27, 2023 בשעה 4:31 pm
המפתח הראשי של הדו"ח צריך להיות ABS (STACK8.KEY1) כדי להביא את התקלה ואת הטיפול ביחד.מפתח שני צריך להיות STACK8.KEY1 > 0 ? 1: 2. כך יופיעו השורות של התקלה קודם.
מפתח שלישי STACK8.KEY2
- נובמבר 28, 2023 בשעה 8:57 am
איך מציגים ב 2 עמודות – כרגע מציג בעמודה אחת גם תקלה וגם טיפול .הרי זה אותו שדה TEXTממש מסובך..
בדוח המקורי – נעזרו בטבלה DAYS – זה גרם שכל הטקסט הופיע בשורה אחת – אפילו אם היו 2 שורות – איך זה קורה?
- יש להתחבר למערכת על מנת להגיב.