![]() |
![]() |
![]() |
|
v7: Ошибка "Не выбран документ!" при записи документа | ☑ | ||
---|---|---|---|---|
0
Dark_iNiTro
04.03.12
✎
21:26
|
Код
Док = СоздатьОбъект("Документ"); Док.ВыбратьПодчиненныеДокументы(,,ТекДок); Пока Док.ПолучитьДокумент() = 1 Цикл Если Док.Вид() = "СчетФактура" Тогда ДокСчФ = Док.ТекущийДокумент(); ЕстьСчетФактура = 1; КонецЕсли; КонецЦикла; // создаем СФ Если ЕстьСчетФактура = 0 Тогда ДокСчФ = СоздатьОбъект("Документ.СчетФактура"); ДокСчФ.Новый(); ИначеЕсли ТекДок.ТекущийДокумент().проведен() = 1 Тогда // текущиее основание (Документ отгрузка) проведен! -- пропускаем цикл Продолжить; КонецЕсли; .... // заполняем СФ ТекДок.ВыбратьСтроки(); Пока ТекДок.ПолучитьСтроку() = 1 Цикл ... КонецЦикла; //Попытка ДокСчФ.Записать(); суть в том, что если есть непроведенная реализация, то перезаписываем счет-фактуру (если есть, если нет то создаем). Проблема в том что при записи выдается "Не выбран документ!" |
|||
1
Креатив
04.03.12
✎
21:38
|
(0)Так в обоих случаях нужно ДокСчФ = СоздатьОбъект("Документ.СчетФактура");
А в первом ещё и спозиционироваться на нём. |
|||
2
Dark_iNiTro
04.03.12
✎
21:44
|
добавил код перед:
ДокСчФ = СоздатьОбъект("Документ.СчетФактура"); но все равно не помогает |
|||
3
viktor_vv
04.03.12
✎
21:46
|
А ТекДок - это что ? Где присваиваешь ?
|
|||
4
viktor_vv
04.03.12
✎
21:50
|
И сделай лучше так
Если Док.Вид() = "СчетФактура" Тогда ДокСчФСсылка = Док.ТекущийДокумент(); ЕстьСчетФактура = 1; КонецЕсли; ДокСчФ = СоздатьОбъект("Документ.СчетФактура"); Если ЕстьСчетФактура = 0 Тогда ДокСчФ.Новый(); ИначеЕсли ТекДок.ТекущийДокумент().проведен() = 1 Тогда // текущиее основание (Документ отгрузка) проведен! -- пропускаем цикл Продолжить; Иначе ДокСчФ.НайтиДокумент(ДокСчФСсылка) ; КонецЕсли; |
|||
5
andrewks
04.03.12
✎
21:52
|
ДокСчФ = Док.ТекущийДокумент();
заменить на ДокСчФ = Док; |
|||
6
Dark_iNiTro
04.03.12
✎
21:59
|
ДокСчФ.Договор = ТекДок.Договор;
{C:\DOCUMENTS AND SETTINGS\dark\РАБОЧИЙ СТОЛ\ЗАГРУЗКАДАННЫХИЗ82ТЕСТ.ERT(288)}: Поле агрегатного объекта не обнаружено (Договор) |
|||
7
Dark_iNiTro
04.03.12
✎
22:55
|
Хэлп!!!
|
|||
8
BlackSeaCat
04.03.12
✎
23:00
|
Настоящий программист даже когда тонет, кричит: "F1! F1! F1!!!"
|
|||
9
nicxxx
05.03.12
✎
05:54
|
телепатирую, в 8.2 поле Договор на самом деле называется ДоговорКонтрагента
|
|||
10
Альбатрос
05.03.12
✎
06:39
|
(9) Учитывая, что это 7
|
|||
11
Godofsin
05.03.12
✎
06:45
|
(0) Если ТекДок выбирается в цикле, то переменную ЕстьСчетФактура нужно обнулять.
|
|||
12
Ёпрст
гуру
05.03.12
✎
08:31
|
(0)
ЕстьСчетФактура =0; Док = СоздатьОбъект("Документ"); Док.ВыбратьПодчиненныеДокументы(,,ТекДок); Пока Док.ПолучитьДокумент() = 1 Цикл Если Док.Вид() = "СчетФактура" Тогда ЕстьСчетФактура = 1; Прервать; КонецЕсли; КонецЦикла; // создаем СФ Если ЕстьСчетФактура = 0 Тогда Док = СоздатьОбъект("Документ.СчетФактура"); Док.Новый(); ИначеЕсли ТекДок.проведен() = 1 Тогда // текущиее основание (Документ отгрузка) проведен! -- пропускаем цикл //Тут тоже бред, если это выборка по ТекДок, то достаточно ТекДок.УстановитьФильтр(0,1); Продолжить; КонецЕсли; .... // заполняем СФ ТекДок.ВыбратьСтроки(); Пока ТекДок.ПолучитьСтроку() = 1 Цикл ... КонецЦикла; //Попытка Док.Записать(); |
|||
13
nicxxx
05.03.12
✎
10:04
|
(10)а это ни о чем не говорит - ЗАГРУЗКАДАННЫХИЗ82ТЕСТ.ERT ?
|
|||
15
Dark_iNiTro
05.03.12
✎
10:35
|
Спасибо, viktor_vv, получилось!
|
|||
16
Ёпрст
гуру
05.03.12
✎
10:47
|
(15) наивный какой..
|
|||
17
Ёпрст
гуру
05.03.12
✎
10:47
|
+16 в (4) лажа, если что
|
|||
18
viktor_vv
05.03.12
✎
10:50
|
(17) Ну и где там лажа ?
|
|||
19
Ёпрст
гуру
05.03.12
✎
10:56
|
(18) подумай.
|
|||
20
viktor_vv
05.03.12
✎
10:59
|
(19) Ну еще (11) прощелкал.
|
|||
21
Ёпрст
гуру
05.03.12
✎
11:00
|
(20) еще подумай.
|
|||
22
viktor_vv
05.03.12
✎
11:04
|
(21) Ну тут в цикле.
Пока Док.ПолучитьДокумент() = 1 Цикл Если Док.Вид() = "СчетФактура" Тогда ДокСчФСсылка = Док.ТекущийДокумент(); ЕстьСчетФактура = 1; КонецЕсли; КонецЦикла; Я уже все не копировал, просто кусок показал где поменять. Че-то ты меня пмо в тупик ставишь :). |
|||
23
viktor_vv
05.03.12
✎
11:04
|
*прямо.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |