טעינה מקובץ

פורומים אפיון ופיתוח פריוריטי טעינה מקובץ

  • Post
    Idit
    משתתף
    הי,

    שוב שאלות בעניין טעינות.
    אני מנסה לטעון מקובץ לטבלה שייצרתי. באמצעות Load Table .
    במהלך הטעינה (היות ואני יודעת שהטעינה ישירה לטבלה עובדת בלולאה) אני מנסה להוסיף שדה חדש שלא קיים בקובץ (POS) השדה הזה אמור לספור כל הופעה של רשומה בעלת אותו שם.

    להלן מה שהכנסתי ל Load Query:

    :POS=(:EQPNAME = :COUNTNAME ? :POS+1 : 1);
    :COUNTNAME = :EQPNAME;
    INSERT INTO TECI_HDMETERS(EQPNAME , METGROUPID , METBASEDATE ,
    METLASTUPDATE , METVALUE , METDIFFER , METBASEDATE , METLASTUPDATE ,
    METVALUE , METDIFFER , POS) VALUES(:EQPNAME , :METGROUPID ,
    :METBASEDATE , :METLASTUPDATE , :METVALUE , :METDIFFER , :POS);

    את כל הפרמטרים מלבד POS הגדרתי ב Input Record Fields.
    האם משהו אני לא עושה בסדר??
    כי הטעינה לא הצליחה לי.

מוצגות 6 תגובות – 1 עד 6 (מתוך 6 סה״כ)
  • Replies
    ראיתי שבפסוקית ה-INSERT INTO שלך את ביקשת לבצע הזנה אל 11 שדות שונים, אך בחלק של VALUES בפועל קיימים רק 7 ערכים לטעינה. על-פי המשפט שרשמת, הערך של פרמטר POS ייטען אל העמודה METBASEDATE.
    מה לגבי ה-4 הנותרים?
    Idit
    משתתף
    זו הייתה טעות.

    תיקנתי את השאילתא…ל:

    :POS=(:EQPNAME = :COUNTNAME ? :POS+1 : 1);
    :COUNTNAME = :EQPNAME;
    SELECT :POS , :COUNTNAME ASCII ADDTO 'C:\TEMP\HDMETERS_TEST.TXT';
    INSERT INTO TECI_HDMETERS(EQPNAME , METGROUPID , METBASEDATE ,
    METLASTUPDATE , METVALUE , METDIFFER ,
    POS) VALUES(:EQPNAME , :METGROUPID ,
    :METBASEDATE , :METLASTUPDATE , :METVALUE , :METDIFFER , :POS);

    אבל זה עדיין לא טוען לי משום מה….
    ואפילו לא מייצר לי את הקובץ לבדיקה…
    :blush:

    Lior
    מנהל בפורום
    הי עידית
    עשית בדיקת סינטקס ?
    Idit
    משתתף
    היי,

    הצלחתי לטעון-תודה.

    אורן קפלן
    משתתף
    היי עידית, איך הסתדרת?

    או שהתיקון שערכת פתר את הבעיה?

    Idit
    משתתף
    שיניתי קצת את הפרוצדורה.

    :

    COUNTNAME = (:COUNTNAME " ? :COUNTNAME : ") ;
    :PS = (:EQPNAME = :COUNTNAME ? :PS + 1 : 1) ;
    /**/
    SELECT HDENT INTO :GROUP_ID FROM TECI_HDENT , TECI_HDTBL
    WHERE TECI_HDENT.HDTBL = TECI_HDTBL.HDTBL AND
    TECI_HDTBL.TBLNAME = '25' AND TECI_HDENT.ENTNAME = :METGROUPID ;
    /**/
    :COUNTNAME = (:COUNTNAME = :EQPNAME ? :COUNTNAME : :EQPNAME) ;
    /**/
    /*SELECT :EQPNAME , '|' , :METDIFFER FROM DUMMY ASCII ADDTO
    'D:\TEMP\HDMETERS_TEST.TXT';*/
    /**/
    INSERT INTO TECI_HDMETERS(EQPNAME , METGROUPID , METBASEDATE ,
    METLASTUPDATE , METVALUE , METDIFFER ,
    POS) VALUES(:EQPNAME , :GROUP_ID ,
    ATOD(:METBASEDATE,'DD/MM/YY') ,
    ATOD(:METLASTUPDATE,'DD/MM/YY hh:mm') , :METVALUE ,
    ATOI(:METDIFFER) ,:PS );
מוצגות 6 תגובות – 1 עד 6 (מתוך 6 סה״כ)
  • יש להתחבר למערכת על מנת להגיב.