קריאת שמות של קבצים והעתקתם

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

  • Post
    tal
    משתתף
    שלום לכולם

     

    תודה מראש לעזורים.

    אני מנסה לקרוא קבצים שיש בתיקייה מסוימת ולהעתיק אותם לתיקייה אחרת. הסתכלתי ב – SDK והתאמתי לצרכים שלי.

    לפי ה – SDK, משתנה PATH אמור להחזיק את שם הקובץ     (/* now the variable :path holds the filename */)

    רציתי לראות שאני מקבל את השם של הקובץ כמו שצריך אז השתמשתי בהכנסה ל – GENERALLOAD.

    כשאני מכניס את השורה הזאת

    INSERT INTO GENERALLOAD(LINE, TEXT)
    VALUES(1, :PATH);

    אני מקבל רק את נתיב הקובץ בלי השם שלו.C:\Users\Master\Desktop\New folder (2)/

     

    כשאני מכניס את השורה הזאת

    INSERT INTO GENERALLOAD(LINE, TEXT)
    VALUES(1, :FILENAME);

    אני מקבל ערך ריק.

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

     

    זה הקוד.

     
    <p style="direction: ltr;">:DIR = 'C:\Users\Master\Desktop\New folder (2)';</p>
    <p style="direction: ltr;">:DES = 'D:\TEST';</p>
    <p style="direction: ltr;">SELECT SQL.TMPFILE INTO :ST6 FROM DUMMY;</p>
    <p style="direction: ltr;">SELECT SQL.TMPFILE INTO :MSG FROM DUMMY;</p>
    <p style="direction: ltr;">EXECUTE FILELIST :DIR,:ST6,:MSG;</p>
    <p style="direction: ltr;">LINK STACK6 TO :ST6;</p>
    <p style="direction: ltr;">GOTO 99 WHERE :RETVAL <= 0;</p>
    <p style="direction: ltr;">DECLARE NEWFILES CURSOR FOR</p>
    <p style="direction: ltr;">SELECT NAME FROM STACK6;</p>
    <p style="direction: ltr;">OPEN NEWFILES;</p>
    <p style="direction: ltr;">GOTO 90 WHERE :RETVAL <= 0;</p>
    <p style="direction: ltr;">:FILENAME = ";</p>
    <p style="direction: ltr;">LABEL 10;</p>
    <p style="direction: ltr;">FETCH NEWFILES INTO :FILENAME;</p>
    <p style="direction: ltr;">GOTO 85 WHERE :RETVAL <= 0;</p>
    <p style="direction: ltr;">:TOFILENAME = STRCAT(:DES,'/', :FILENAME);</p>
    <p style="direction: ltr;">:PATH = STRCAT(:DIR,'/',:FILENAME);</p>
    <p style="direction: ltr;">INSERT INTO GENERALLOAD(LINE, TEXT)</p>
    <p style="direction: ltr;">VALUES(1, :FILENAME);</p>
    <p style="direction: ltr;">EXECUTE COPYFILE :PATH, :TOFILENAME;</p>
    <p style="direction: ltr;">LOOP 10;</p>
    <p style="direction: ltr;">LABEL 85;</p>
    <p style="direction: ltr;">CLOSE NEWFILES;</p>
    <p style="direction: ltr;">LABEL 90;</p>
    <p style="direction: ltr;">UNLINK STACK6;</p>
    <p style="direction: ltr;">LABEL 99;</p>
    <p style="direction: ltr;"></p>

מוצגות 2 תגובות – 1 עד 2 (מתוך 2 סה״כ)
  • Replies
    NoamN
    משתתף
    none
    לא ארשום כמה הערות שהיו לי אם ההעתקה מצליחה.

    לא הבנתי למה את שומרת את הערכים לתוך GENERALLOAD אבל יש שם שגיאה: כל פעם שם הקובץ החדש מוכנס עם LINE = 1! זה אומר שההכנסה הראשונה תצליח והאחרות לא. צריך להגדיל כל פעם את הערך של LINE כדי שיהיו כמה שורות ב-GENERALLOAD

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