Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

После переброски 'Упаковка' = '#Z SZ#S' = ??? (XP, D2007)


Страницы:   1 2

petvv ©   (2008-06-24 10:41:00) 

Доброго времени суток !

Проблема такая:
Тупо заполняю таблицу (dbf) недостающими значениями из другой таблицы (то же dbf, выгружена из 1С). Вот код:
Table1.Close;
Nom_1c.Close;
Table1.Active:=True;
Table1.Edit;
Nom_1c.Active:=True;
for n := 1 to Table1.RecordCount do
 begin
   kod:=Table1.FieldByName('cod_post').AsString;
   i:=pos('|',kod);
   if i>0 then
//    kod:=trim(copy(kod,1,i-1))
   kod:=copy(kod,1,i-1)
   else
   kod:=kod;
   firma:=Table1.FieldByName('post').AsString;
   Query4.Close;
   Query4.SQL.Clear;
//    sqlText1:= ' and noml_1c.Kod_post=:firma';
   sqlText:='select ed, edp, okei, ISPVZAYAVK, JNVLS, OA, NDS, ZAKBEZPR, SHTRIH from noml_1с where KOD_POST=:kod';//  and Post=:firma';
   Query4.SQL.Add(sqlText);
   Query4.Params[0].AsInteger:=StrToInt(kod);
//    Query4.Params[1].AsString:=firma;
   Query4.Open;
   if query4.RecordCount>0 then
   begin
   Table1.Edit;
      for j := 1 to Query4.RecordCount do
        begin
         Table1.FieldByName('ed').AsString:=Query4.FieldByName('ed').AsString;
         sqlText1:=Query4.FieldByName('edp').Value;
         Table1.FieldByName('edp').AsString:=Query4.FieldByName('edp').AsString;
         Table1.FieldByName('okei').AsString:=Query4.FieldByName('okei').AsString;
         Table1.FieldByName('ISPVZ').AsString:=Query4.FieldByName('ISPVZAYAVK').AsString;
         Table1.FieldByName('JNVLS').AsString:=Query4.FieldByName('JNVLS').AsString;
         Table1.FieldByName('OA').AsString:=Query4.FieldByName('OA').AsString;
         Table1.FieldByName('NDS').AsString:=Query4.FieldByName('NDS').AsString;
         Table1.FieldByName('ZAKBEZPR').AsString:=Query4.FieldByName('ZAKBEZPR').AsString ;
         Table1.FieldByName('Strich').AsString:=Query4.FieldByName('SHTRIH').AsString;
         Query4.Next;
        end;
   end;
   Table1.Next;
 end;

end;

и в этом месте
Table1.FieldByName('edp').AsString:=Query4.FieldByName('edp').AsString;
получается Query4.FieldByName('edp').AsString='#Z SZ#S'

Это как так, и как с этим бороться ???


petvv   (2008-06-24 10:59:00) [21]

Пробовал уже перекодировал в разные кодировки -> хрен редьки не слаще


Плохиш   (2008-06-24 10:57:00) [22]


> petvv   (24.06.08 10:54) [4]
> Нет поле edp имеет значение 'упаковка'

В стандартной кодовой странице нет таких закорючек.


petvv   (2008-06-24 10:54:00) [23]

Нет поле edp имеет значение 'упаковка'


korneley   (2008-06-24 10:53:00) [24]

так может это и есть название упаковки, раз запрос его возвращает?


petvv   (2008-06-24 10:45:00) [25]

='Упаковка'

Если имеешь в виду, что должно стоять Query4.FieldByName('edp').Value? то оно тоже ='#Z SZ#S'


Palladin   (2008-06-24 10:43:00) [26]


> получается Query4.FieldByName('edp').AsString='#Z SZ#S'

а чему оно должно получаться?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо