Имя: Пароль:
1C
1C 7.7
v7: Выборка запросом документов для изменения
0 KattyMix
 
10.11.11
16:18
Приветик.
Запросом  выбирается  документ и  далее  необходимо  выполнить  в  зависимости  от  надобности 2  действия-либо  удалить  строки в этом  документе  и перезаписать  его,либо дозаписать  табличную часть.

   ЗапросПодр = СоздатьОбъект("Запрос");
       ТекстЗ = "Период С ДатаАктуальности По ДатаАктуальности;
       |ОбрабатыватьДокументы Проведенные;
       |ДокТабель = Документ.НачисленияУдержанияСписком.ТекущийДокумент;
       |Группировка ДокТабель;
       |
       |";
       ЗапросПодр.Выполнить(ТекстЗ);
       Пока ЗапросПодр.Группировка(1) = 1 Цикл
           фТекст = "Найден документ " + ЗапросПодр.ДокТабель + ". Дозагрузка будет производиться в него.";
           НайденныйДок = ЗапросПодр.ДокТабель;
           Если НайденныйДок.Выбран() = 1 Тогда  
               //Док.НайтиДокумент(НайденныйДок);
                   Сообщить(НайденныйДок);
           КонецЕсли;    
           
           Ответ = Вопрос("В базе найден документ!!!
           |(""Да"") - Удалить строки и заполнить документ ""с нуля""
           |(""Нет"") - Продолжить заполнение документа
           |(""Отмена"") - Прервать загрузку/обработку документа","Да+Нет+Отмена");
           Если Ответ = "Да" Тогда
               НайденныйДок.УдалитьСтроки();
           ИначеЕсли Ответ = "Отмена" Тогда
               СтатусВозврата(0);
               Возврат;
           КонецЕсли;
       
       КонецЦикла;
   
       КонецЕсли;    

НайденныйДок.Записать();



вылезает  ошибка

НайденныйДок.Записать();    
{C:\DOCUMENTS AND SETTINGS\MIKHAILOVA.E\DESKTOP\ЗАГРУЗКАПРЕМИИ17032011.ERT(90)}: Не выбран документ!
1 andrewks
 
10.11.11
16:22
вот здесь была здравая мысль:
//Док.НайтиДокумент(НайденныйДок);

но кто-то её закомментил
2 Mikeware
 
10.11.11
16:22
Необходимо? сделай!
3 Конфигуратор1с
 
10.11.11
16:23
В СП написано что метод записать используется только для объектов созданных через создать объект
4 1Сергей
 
10.11.11
16:23
Где СоздатьОбъект("Документ"); ?
5 Конфигуратор1с
 
10.11.11
16:23
(1) опередил)))
6 Оболтус
 
10.11.11
16:24
Кэтти - это девушка? А где фотка?
7 Конфигуратор1с
 
10.11.11
16:24
кстати, это не 8ка - выборка здесь будет эффективнее
8 1Сергей
 
10.11.11
16:25
(7)+1 Запрос тут нафиг не нужен
9 Конфигуратор1с
 
10.11.11
16:26
Док = СоздатьОбъект("Документ.НачисленияУдержанияСписком");
Док.ВыбратьДОкументы(ДатаАктуальности ,ДатаАктуальности );
пока док.получитьдокументы()=1 цикл

КОнеццкила;
10 KattyMix
 
10.11.11
16:41
Запрос  убрала.Но  проблема  осталась   прежней.
СоздатьОбъект  было-просто  я  не  скопировала  изначально...


       Док = СоздатьОбъект("Документ.ТабельОтработанногоВремени");
       Док.ВыбратьДокументы(ДатаАктуальности,ДатаАктуальности);
       Пока Док.ПолучитьДокумент() = 1 Цикл
           

           
           Ответ = Вопрос("В базе найден документ!!!
           |(""Да"") - Удалить строки и заполнить документ ""с нуля""
           |(""Нет"") - Продолжить заполнение документа
           |(""Отмена"") - Прервать загрузку/обработку документа","Да+Нет+Отмена");
           Если Ответ = "Да" Тогда
               Док.УдалитьСтроки();
           ИначеЕсли Ответ = "Отмена" Тогда
               СтатусВозврата(0);
               Возврат;
           КонецЕсли;
   
       КонецЦикла;
Док.Записать();
11 Оболтус
 
10.11.11
16:42
Док.Записать(); нужно после Док.УдалитьСтроки(); поставить
12 KattyMix
 
10.11.11
16:45
Запросом  кстати находился документ-а  вот перебором  таким  Пусто!
13 KattyMix
 
10.11.11
16:45
Запросом  видит  документ-а тут после ПолучитьДокумент  сразу ложь
14 andrewks
 
10.11.11
16:48
предлагаю ответить на (6)
15 Vladal
 
10.11.11
16:48
Если Ответ = "Да" Тогда
   Док.УдалитьСтроки();
   Док.Записать();   // ------ пишем текущий документ в выборке
Иначе.......

// -------- а если Док.Записать() после цикла, не факт, что зпишется последний документ выборки
16 Vladal
 
10.11.11
16:49
(14) А проблема разве решена?
КэттиМикс - это смиксованный из девушки мальчик )))
17 chief accountant
 
10.11.11
16:49
(13) Ну в (0) Документ.НачисленияУдержанияСписком, а в (10) Документ.ТабельОтработанногоВремени ???
18 Ёпрст
 
10.11.11
16:49
(13) ёпта, в запросе тебя один вид документа, в переборе - другой.
Ты уж определись, чего тебе надо.ю
19 andrewks
 
10.11.11
16:50
(16) когда проблема будет решена - будет уже поздно. пробегись по темам
20 KattyMix
 
10.11.11
16:54
Девушка =)
Зарегистрировалась на  работе-тут  моих  фоток  нет  на  компе=)
21 andrewks
 
10.11.11
16:55
ну хоть пол исправь
22 chief accountant
 
10.11.11
16:58
(21) Пусть эту поставит: http://my.mail.ru/mail/kattymix/
23 andrewks
 
10.11.11
16:58
замечательно. Катюша, на чём сейчас затык? мы готовы продолжить решение проблем :)
24 chief accountant
 
10.11.11
17:00
(23) Не, лучше эту: http://foto.mail.ru/mail/kattymix/4/6.html#6
25 aka AMIGO
 
10.11.11
17:01
(10) что-то я не понимаю.. разучился я программить, наверное?
в цикле выбираем документы, спрашиваем, на "да" удаляем строки, с документом больше ничего не делаем, берем следующий документ, и т.д.
в конце, когда все доки выбраны вроде как последний документ записываем..
??
26 aka AMIGO
 
10.11.11
17:02
+25 зачем удалять строки, если док не записывать?
27 KattyMix
 
10.11.11
17:04
(22)Ахаха-уже  и  в Яндексе  искать меня  стал?К  сожалению,нам  админы  закрыли  мэйл  и я не  могу  посмотреть  я ли  это  вообще)))
28 aka AMIGO
 
10.11.11
17:05
мда.. зря, видно, я запостил, раз хихи в ветке..
29 KattyMix
 
10.11.11
17:18
(28)нет-извини...я  счас  пытаюсь  переписать и  здесь размещу потом  что  вышло...
30 chief accountant
 
11.11.11
08:11
(27) Это (0) "Ахаха", а (22) нормальное мужское любопытство