|
v7: Проведение Док с ДБФ |
☑ |
0
work92
10.01.13
✎
11:36
|
Не создает новый документ что с кодом не так
|
|
1
work92
10.01.13
✎
11:36
|
Док=СоздатьОбъект("Документ.ПоступлениеТоваров");
ДБФ = создатьОбъект("XBASE");
ДБФ.ОткрытьФайл("D:\catalog.dbf");
Док=СоздатьОбъект("Документ.ПоступлениеТоваров");
ДБФ.Первая();
Пока ДБФ.ВКонце()=0 Цикл
Ценаа=ДБФ.Sum;
Док.Новый();
// Док.МестоХранения=ДБФ.Cklad;
//Док.Контрагент=ДБФ.Postov;
//Док.Договор=ДБФ.Dogovor;
//Док.НомерДок=ДБФ.Homerdok;
//Док.ДатаДок=ДБФ.DataDok;
Док.НоваяСтрока();
// Док.Товар=ДБФ.Tovar;
// Док.Количество= ДБФ.kol;
Док.Цена=Ценаа;//ДБФ.Sum;
ДБФ.Следующая();
Док.Записать();
Док.Провести();
КонецЦикла;
КонецПроцедуры
|
|
2
Ёпрст
гуру
10.01.13
✎
11:39
|
дык в цикл не заходит и привет
|
|
3
KRV
10.01.13
✎
11:41
|
Док=СоздатьОбъект("Документ.ПоступлениеТоваров"); - для надежности два раза?
|
|
4
work92
10.01.13
✎
11:42
|
Ёпрст4 что в цикл не фходит
|
|
5
KRV
10.01.13
✎
11:49
|
ДБФ.Следующая(); - в эту строчку внимательно вкурись в СП
(2) входит в цикл ;)
|
|
6
Dolly_EV
10.01.13
✎
11:53
|
Ваще четкий код)))
Док.Новый();
Док.НоваяСтрока();
Док.Записать();
Ты точно уверен, что на КАЖДУЮ запись из dbf тебе надо создавать ОТДЕЛЬНЫЙ док. Поступления с ОДНОЙ строкой?))
|
|
7
KRV
10.01.13
✎
11:57
|
(6) читай код выше - там в ДБФ у него поставщики и склады.. если чо..
|
|
8
Dolly_EV
10.01.13
✎
12:10
|
Вот так попробуй:
КолЗаписей=ДБФ.КоличествоЗаписей();
Для НомЗаписи=1 По КолЗаписей Цикл
ДБФ.Перейти(НомЗаписи);
КонецЦикла;
|
|
9
Dolly_EV
10.01.13
✎
12:14
|
или так:
ДБФ.Первая();
Пока ДБФ.Следующая()=1 Цикл
Док.....
КонецЦикла;
(7) И? в конкретном примере цикл один, так что насоздается много доков с одной строкой.
Если всё сидит в одной dbf (Поставщики, доки, товар), без индекса тут не обойтись
|
|
10
KRV
10.01.13
✎
12:30
|
зачем? ну надо ему кучу доков с одной строкой - пусть лепит..
|
|
11
KRV
10.01.13
✎
12:31
|
(8) да не там у него ошибка..
|
|