› פורומים › אפיון ופיתוח פריוריטי › הוספת טבלה
- This topic has 11 תגובות, 3 משתתפים, and was last updated לפני 15 שנים, 7 חודשים by Lior.
- Post
-
- מרץ 26, 2009 בשעה 11:46 am
היי אני צריך להוסיף טבלה חדשה שנקראת סקר חוזה הטבלה מורכבת מהשדות הבאיםCURDATE שזה התאריך
SEKNAME שזה מס סקר חוזה שיהיה נומירטור מס רץ
SEK סקר חוזה (ID)
CUSTNAME לקוח
ORDNAME מס הזמנה לקוח
STATUS לפי טבלת סטאטוסים של סקר חוזה
DETAL פרטיםהבעיה איך לעשות את ה SEKNAME מס רץ נומירטור
תודה ,על העזרה
- Replies
-
- מרץ 26, 2009 בשעה 3:57 pm
או – להגריר לשדה מפתח מסוג A
או – לעדכן שדה מטריגרים
(POST-INSERT, POST-UPDATE, POST-DELETE)- מרץ 26, 2009 בשעה 4:47 pm
הגדרתי את SEKNAME מפתח מסוג A וזה לא עובד
מצ"ב צילום מסך של הטבלה ושל המפתחות שעשיתי
תודה על העזרה- מרץ 26, 2009 בשעה 6:51 pm
הי,
כל טבלה חייבת שיהיה לה מפתח U. מפתח A אינו חובה.
הכי פשוט במבחינתך הוא להשאיר את מבנה העמודות כמו שהוא, להגדיר את SEKNAME מפתח U, את SEK מפתח A.עד כאן הטבלה.
באשר למסך –
על אחת מהעמודות שתמיד יהיה בהן ערך (אם מחמת שהן חובה או אם מחמת שיהיה טריגר שימלא אותן) תכניס POST-FIELD. תפקידו של טריגר זה יהיה למלא את :$.SEKNAME במספר הרץ. כדי לחשב אותו, מצא את הערך המקסימלי הקיים והוסף לו 1.
זה עדיין לא הכל – ב PRE-INSERT עליך לבדוק שוב שהערך אינו קיים בטבלה (הוא יכול להיות קיים כי שני משתמשים פותחים שורה חדשה, מקבלים את אותו מקסימלי + 1, הראשון הצליח להכנס, כשהשני יורד מהשורה, הוא מנסה להכניס נתון קיים למפתח U וההכנסה נכשלת). אם מצאת שהוא קיים, קדם אותו באחד עד אשר לא תמצא ערך זהה בטבלה.
- מרץ 27, 2009 בשעה 8:45 pm
מבחינת הטבלה אין בעיה אבל יש לי בעיה עם המסך
לא מצליח אשמח אם תרשום הקוד מה אני צריך לרשום בטריגר
POST-FIELD,PRE-INSERT
שדה החובה הוא התאריך CURDATE- מרץ 27, 2009 בשעה 8:48 pm
קח בחשבון שיהיה לזה מסכי בן גם אם זה קשור איך ואיך צריך לקשור או זה משהו רגיל- מרץ 29, 2009 בשעה 10:40 pm
[code:1]/* Replace YOURTABLENAME with the real table name *//* CURDATE/POST-FIELD */
:$.SEKNAME = '1000' ;
/* this is the number of the first record change it to whatever you like*/
SELECT ITOA(MAX(ATOI(SEKNAME)) + 1) INTO :$.SEKNAME
FROM YOURTABLENAME ;/* PRE-INSERT */
:«»SEKNAME = :$.SEKNAME ;
LABEL 10 ;
GOTO 20 WHERE NOT EXISTS
(SELECT 'X'
FROM YOURTABLENAME
WHERE SEKNAME = :«»SEKNAME)
;
:«»SEKNAME = ITOA(ATOI(:«»SEKNAME) + 1);
LOOP 10 ;
LABEL 20 ;:$.SEKNAME =:«»SEKNAME ;
[/code:1]- אפריל 18, 2009 בשעה 6:54 pm
היי
רציתי להוסיף מסך בן לטבלה מוצרים בסקר חוזה
בניתי את הטבלה ואז קישרתי אותה למסך אב
אני מכין את המסך ואז נות הודעת שגיאה
מצ"ב קובץ ה PREP [file name=prep.txt size=515]https://www.priority-forums.com/he/images/fbfiles/files/prep.txt[/file]נה AHME_SEKER.$: בהפעלה AHME_SEKER/DELETE אינו קיים כעמודה במסך.
- יש להתחבר למערכת על מנת להגיב.