Parametry
move_descr_obj | implicitnφ nßvrh p°enosu |
inpname | jmΘno vstupnφho souboru, tabulky nebo dotazu |
inpobj | Φφslo otev°enΘho kurzoru nebo objektu ve WinBase602 |
outname | jmΘno v²stupnφho souboru, tabulky nebo dotazu |
inpformat | vstupnφ formßt dat |
outformat | v²stupnφ formßt dat |
inpcode | k≤dovßnφ ΦeÜtiny ve vstupnφm souboru |
outcode | k≤dovßnφ ΦeÜtiny ve v²stupnφm souboru |
silent | urΦenφ, zda se majφ generovat chybovß hlßÜenφ na obrazovku. |
cdp | kontextovß prom∞nnß klienta |
Od verze:
5.0
Popis
Funkce Move_data
provßdφ p°enos dat. Lze jφ nahradit vÜechny p°edchozφ funkce pro exporty a importy dat.
Pokud move_descr_obj je -1, pak se vytvo°φ implicitnφ nßvrh p°enosu na zßklad∞ ostatnφch parametr∙, jinak se p°eΦte nßvrh p°enosu z databßze a pozm∞nφ se podle hodnot ostatnφch parametr∙. ╚φslo popisu lze zφskat funkcφ Find_object
.
Zdroj a cφl dat jsou popsßny sv²m formßtem (inpformat, outformat), a podle svΘho formßtu (v parametrech inpname, outname) takΘ jmΘnem souboru (nap°. FAKTURY.DBF, PENALE.CSV apod. ) nebo jmΘnem tabulky Φi dotazu, p°φpadn∞ Φφslem otev°enΘho kurzoru nebo objektu ve WinBase602 (inpobj). K≤dovßnφm ΦeÜtiny ve vstupnφm a v²stupnφm souboru se zadß v parametrech inpcode a outcode. Data ulo₧enß v databßzi majφ v₧dy k≤d 0. Pokud n∞kter² parametr nechcete zadat, uve∩te pro Φφseln² parametr hodnotu -1, pro °et∞zcov² parametr prßzdn² °et∞zec.
Parametr silent °φkß, zda se majφ generovat chybovß hlßÜenφ na obrazovku, vΦetn∞ varovßnφ p°i p°epsßnφ ji₧ existujφcφho souboru.
Soubor, z n∞ho₧ se majφ Φφst (nebo do n∞ho₧ se majφ zapisovat) data nesmφ b²t otev°en (nap°. funkcφ Reset
).
Je-li tato funkce zavolßna uvnit° transakce, bude tato transakce ukonΦena. Efekt funkce nelze odvolat pomocφ Roll_back.
P°enos dat lze nastavovat i ruΦn∞ pomocφ nßvrhß°e p°enos∙. Okno nßvrhß°e se otev°e funkcφ Edit_impexp
.
Formßt se zadßvß t∞mito konstantami:
IMPEXP_FORMAT_WINBASE
|
0 | soubor ve vnit°nφm formßtu WinBase602 (TDT) |
IMPEXP_FORMAT_TEXT_COLUMNS
|
1 | textov² soubor ve sloupcovΘm formßtu |
IMPEXP_FORMAT_TEXT_CSV
|
2 | textov² soubor ve formßtu CSV |
IMPEXP_FORMAT_DBASE
|
3 | soubor ve formßtu dBase IV (DBF) |
IMPEXP_FORMAT_FOXPRO
|
4 | soubor ve formßtu FoxPro 2.0 (DBF) |
IMPEXP_FORMAT_ODBC
|
5 | tabulka p°ipojena p°es ODBC |
IMPEXP_FORMAT_CURSOR
|
6 | pevn² kurzor ve WinBase602 (pouze pro vstup) |
IMPEXP_FORMAT_TABLE
|
10 | tabulka ve WinBase602 (pro vstup takΘ prom∞nn² kurzor) |
IMPEXP_FORMAT_TABLE_REIND
|
11 | tabulka ve WinBase602, indexy se m∞nφ a₧ po p°enosu |
P°i exportu z prom∞nnΘho kurzoru (10) lze pou₧φt pouze vnit°nφ formßt WinBase (0). Pro export z prom∞nnΘho kurzoru do jinΘho formßtu pou₧ijte obrat uveden² v p°φkladech.
P°i importu z vnit°nφho formßtu (0) nelze vytvo°it novou tabulku (10 nebo 11).
K≤dovßnφ ΦeÜtiny se zadßvß t∞mito konstantami:
0 | EE Win, k≤dovß strßnka 1250 , vnit°nφ ΦeÜtina Windows |
1 | k≤d Kamenick²ch, KEYBCS2; |
2 | k≤d KOI8-CS; |
3 | k≤d LATIN 2 pou₧it² v Text602; |
4 | k≤dovß strßnka 852 z MS DOSu 5.0, LATIN 2; |
5 | k≤d Windows ANSI. |
Hodnota funkce
Funkce vracφ FALSE p°i chyb∞.
P°φklad 1
import z DBF souboru:
ss := "D:\DBFS\*.DBF";
if Select_file(0,ss) then
Move_data(-1,ss,-1,'FAKT',4,10,4,0,false);
P°φklad 2
export dat z prom∞nnΘho dotazu do souboru ve vnit°nφm formßtu:
Open_sql_cursor(cc, "select * from TAB1 where...");
if not Move_data(-1,"",cc,"c:\dotaz.tdt",10,0,0,0,false) then Signalize;
P°φklad 3
export dat z prom∞nnΘho dotazu do souboru v DBF:
str := "select * from TAB1 where...";
Open_sql_cursor(cc, str);
if Find_object("POMDOTAZ",CATEG_CURSOR,pomdotnum) then
Insert_object("POMDOTAZ",CATEG_CURSOR,pomdotnum);
OBJTAB[pomdotnum].defin[0,StrLength(str)] := str;
OBJTAB[pomdotnum].defin# := StrLength(str);
if not Move_data(-1,"POMDOTAZ",-1,"c:\dotaz.dbf",6,4,0,0,false) then Signalize;
P°φklad 4
export s p°ipraven²m p°enosem:
if Find_object("EXP_DBF",CATEG_PGMSRC,prennum) then Signalize
else
if not Move_data(prennum,"",-1,"",-1,-1,-1,-1,true) then Signalize;
Viz