Выгрузка данных в dbf
- shumamura
- Автор темы
- Не в сети
- COM_KUNENA_SAMPLEDATA_RANK3
- Сообщений: 52
- Спасибо получено: 51
После записи данных в dbf командой
{
dbfwrite.i
&Name=dbfname
&Record=wr_str
&Ok=Ok
&Status=stat
&Buffer=mes_buf
}
и при его закрытии через
{
dbfclose.i
&Name=dbfname1
&Ok=Ok1
&Status=Stat1
&Buffer=mes_buf1
}
выдается ошибка - "Ошибка в test.dbf : Файл имеет неверный размер (-103) " ,создается сам файл размером ~7 Mb .
но dbfclose.i не может его закрыть - при повторном запуске процедуры говорит - Ошибка : один dbf-файл уже открыт для записи( - 111)
почему так - не пойму... думать что прогресс не может работать с таблицами таких объемов - как-то даже не серьезно...
может кто подскажет в чем истина? и еще - как поменять кодировку выгружаемых данных?
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- alex_sar
- Посетитель
Скажите пожалуйста, а почему у Вас разные запись и закрытие?
записываете в файл dbfname а закрываете dbfname1 и т.д.
Покажите часть кода если это возможно
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- shumamura
- Автор темы
- Не в сети
- COM_KUNENA_SAMPLEDATA_RANK3
- Сообщений: 52
- Спасибо получено: 51
alex_sar пишет: Добрый день.
Скажите пожалуйста, а почему у Вас разные запись и закрытие?
записываете в файл dbfname а закрываете dbfname1 и т.д.
Покажите часть кода если это возможно
да, и вправду тут так. на самом деле я работал с двумя таблицами и видимо не заметил когда писал тут.
а в исходном коде все правильно.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- alex_sar
- Посетитель
Как открываете перед записью таблицу, как пишите в нее и как пытаетесь закрыть.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- shumamura
- Автор темы
- Не в сети
- COM_KUNENA_SAMPLEDATA_RANK3
- Сообщений: 52
- Спасибо получено: 51
DEF VAR dbfname AS CHAR INIT "trebov.DBF".
DEF VAR fieldlist as char INIT
"numdog:C12,DateLoan:C8,PersonFIO:C90,Address:C150,Datecur:C8,Debt:C13,Maindebt:C13,ProcDebt:C13,TermDebt:C13,DPrDbtSt:D,DPrDbEn:D,FMDebt:C10,FMPrDb:C10".
DEF VAR ok AS LOGICAL NO-UNDO.
DEF VAR stat AS INT64 NO-UNDO.
DEF VAR mes_buf AS CHAR NO-UNDO.
DEF VAR wr_str AS CHAR NO-UNDO.
DEF VAR bdate AS CHAR NO-UNDO.
создание таблицы
{
dbfcreat.i
&Name=dbfname
&Fields=fieldlist
&Ok=ok
&Status=stat
&Buffer=mes_buf
}
процесс записи и за ним процесс закрытия
for each temp.
wr_str = string(temp.nomdog,"x(12)") +
string(temp.datadog) +
string(temp.client,"x(90)") +
string(temp.adres,"x(150)") +
string(vdate) +
string(temp.allzadolzh,'>>>>>>>>>>.99') +
string(temp.ostprossud,'>>>>>>>>>>.99') +
string(temp.proczakred,'>>>>>>>>>>.99') +
string(temp.ostsud,'>>>>>>>>>>.99')
+ '0' + '0' + '0' + '0' .
{dbfwrite.i
&Name=dbfname
&Record=wr_str
&Ok=Ok
&Status=stat
&Buffer=mes_buf
}
end.
{dbfclose.i
&Name=dbfname
&Ok=Ok
&Status=stat
&Buffer=mes_buf
}
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- alex_sar
- Посетитель
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- shumamura
- Автор темы
- Не в сети
- COM_KUNENA_SAMPLEDATA_RANK3
- Сообщений: 52
- Спасибо получено: 51
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- shumamura
- Автор темы
- Не в сети
- COM_KUNENA_SAMPLEDATA_RANK3
- Сообщений: 52
- Спасибо получено: 51
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- alex_sar
- Посетитель
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- shumamura
- Автор темы
- Не в сети
- COM_KUNENA_SAMPLEDATA_RANK3
- Сообщений: 52
- Спасибо получено: 51
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.