7.7 Удаление документов

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем anton, 29 июн 2010.

  1. TopicStarter Overlay
    anton
    Offline

    anton Опытный в 1С

    Регистрация:
    3 авг 2009
    Сообщения:
    187
    Симпатии:
    0
    Баллы:
    26
    Ребят подскажите как удалить документы определенного вида за опреднленный периуд потому что кажды протыкать кнопкой делит не реально их почти 4 тысячи!!!!
  2. Vlad
    Offline

    Vlad Модераторы Команда форума Модератор

    Регистрация:
    16 авг 2006
    Сообщения:
    3.517
    Симпатии:
    19
    Баллы:
    29
    Конфу уточни. Обработка документов должна помочь.
  3. dianofob
    Offline

    dianofob (-_-)y-.o0O

    Регистрация:
    3 июл 2009
    Сообщения:
    711
    Симпатии:
    0
    Баллы:
    26
    ну, какбэ, ничего хитрого тут нет.
    Код:
    oDoc = CreateObject("Документ.Такой-то");
    oDoc.SelectDocuments(ДатаНач,ДатаКон);
    While oDoc.GetDocument() = 1 Do
    oDoc.Delete(0);
    EndDo;
    
  4. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Угу.. как бы да... если при последующем удалении 1С не вылетит.. был такой случай у меня.. удалял из-за этого частями.. ну это так, на всякий случай, возможно все ок и так будет..
    Ant_S сжатие таблиц ИБ не забудьте потом сделать...
  5. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    И для безопасности и ускорения использовать транзакции
  6. TopicStarter Overlay
    anton
    Offline

    anton Опытный в 1С

    Регистрация:
    3 авг 2009
    Сообщения:
    187
    Симпатии:
    0
    Баллы:
    26
    Ребят спасибо вроде все получилось по коду фобецА просто я видно гдето ошибку допустил
    я пытался написать код вот такого вила
    Код:
    Док = СоздатьОбъект("Документ.ОплатаУслугНасел");
    Док.ОбратныйПорядок(1);
    Док.ВыбратьДокументы(Дата1,);
    Док.ВыбратьДокументы();
    Пока Док.ПолучитьДокумент() = 1 Цикл
    Док.Удалить();
    КонецЦикла;
    
    
    Киссиры просто балбесы целую ниделю в прошлогоднюю базу оплату пробивали, а я Ушами прохлопал!!!
  7. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    2 варианта:

    1) Пометка на удаление (Непосредственное будет в монопольном режиме)
    Код:
    НачатьТранзакцию();
    Док = СоздатьОбъект("Документ.ОплатаУслугНасел");    
    Док.ОбратныйПорядок(1); //зачем обратный порядок когда нужно удалить все за интервал дат?
    Док.ВыбратьДокументы(Дата1,Дата2);    
    Док.ВыбратьДокументы();    
    Пока Док.ПолучитьДокумент() = 1 Цикл    
    Док.Удалить(0);    
    КонецЦикла;
    ЗафиксироватьТранзакцию();
    
    
    
    2) Непосредственное удаление. ОПАСНО! Если есть ссылки на объекты (эти документы где-то еще участвуют в качестве основания например будут битые ссылки)
    Код:
    НачатьТранзакцию();
    Спис = СоздатьОбъект("СписокЗначений");
    Докум = СоздатьОбъект("Документ");
    Док = СоздатьОбъект("Документ.ОплатаУслугНасел");    
    Док.ВыбратьДокументы(Дата1,Дата2);    
    Док.ВыбратьДокументы();    
    Пока Док.ПолучитьДокумент() = 1 Цикл    
    //внутри цикла выборки УДАЛЯТЬ НЕЛЬЗЯ
    Спис.ДобавитьЗначение(Док.ТекущийДокумент());    
    КонецЦикла;
    
    //удаляем...
    Для к=1 По Спис.РазмерСписка() Цикл
    Докум.НайтиДокумент(Спис.ПолучитьЗначение(к));
    Докум.Удалить(1);
    КонецЦикла;
    ЗафиксироватьТранзакцию();
    
    
    
  8. Николай7
    Offline

    Николай7

    Регистрация:
    16 июл 2014
    Сообщения:
    39
    Симпатии:
    0
    Баллы:
    1
    Вопрос. Есть зартплата ЗиК, дописанная.
    В связи с закрытием организации и созданием новой, необходимо создать новую базу. Хочу из копии уже имеющейся удалить все документы, а справочники оставить. Делал так же как и в этом примере. Обрабатываю уже 2 день. Ещё и соглашаться всё время надо на пометку удаления. Не все документы удаляет, с этим позже разберусь.
    Можно ли как нибудь автоматизировать процесс или поступить как написано в этом посте
    http://1c-pro.ru/threads/sozdanie-novoj-bazy-dannyx-na-osnove-rabochej-bazy.9791/#post-45970
    --- Объединение сообщений, 25 мар 2016 ---
    Кстати, а зачем выбирать уже выбранные документы?
    Код:
    Док.ВыбратьДокументы(Дата1,Дата2);  
    Док.ВыбратьДокументы();   
    Последнее редактирование: 25 мар 2016
  9. Хряк
    Offline

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    хммм, в зике не фсё так просто, там завязана история реквизитов на документы
    при удалении фсёх доков, в частности, теряется состояние физлица
    впрочем, попытка не пытка, удали все файлы из поста #9 из твоей ссылки
    потом и расскажешь што получилось
    удачи!

    ну, и
    Док.ВыбратьДокументы(Дата1,Дата2);
    Док.ВыбратьДокументы();
    вторая строка, канэшна, лишняя
    Последнее редактирование: 25 мар 2016
  10. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Так вроде сказано, что организация новая.. история не нужна
  11. Хряк
    Offline

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    история не нужна, эт верно, но она есть в 1сконст, битые ссылки и т.п.
    просто остались смутные воспоминания борьбы с неожиданными проблемами
    я бы удалили и этот файл и при первом запуске изменил значение константы номер релиза на "", чтобы восстановить значения исторических констант
  12. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    битые ссылки можно пофиксить ТИ. А вот насчет номера релиза - правильная идея
  13. Николай7
    Offline

    Николай7

    Регистрация:
    16 июл 2014
    Сообщения:
    39
    Симпатии:
    0
    Баллы:
    1
    И так
    Удалил файлы-все что из поста 9 по ссылке.
    Проверка и Тестирование без физической целостности и с ней
    В константах где возможно всё удалил. Сотрудников пометил на удаление.
    Удалил все что было помечено, запустил обработку - пометить на удаление
    Снова все удалил.
    В итоге вроде получилось. Справочники остались. Документов вообще нет.
    Подскажите где " значение константы номер релиза на "" поменять"?
  14. Хряк
    Offline

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    Найди в ГМ процедуру
    Процедура ПриЗаписиКонстанты(ИмяКонстанты, Значение)
    Если ИмяКонстанты = "НомерРелиза" Тогда
    //закомментарь вот так
    // Предупреждение("Константа ""Номер релиза"" является служебной и
    // |не может быть изменена вручную.");
    // СтатусВозврата(0);
    сохрани
    запусти программу на выполнение
    открой константы, номеррелиза, сотри значение
    закрой программу
    открой заново
    отработают все встроенные установки значений констант
    закрой программу
    удали внесенные в ГМ комментарии
    сохрани
    Последнее редактирование: 28 мар 2016
    Николай7 нравится это.
  15. Николай7
    Offline

    Николай7

    Регистрация:
    16 июл 2014
    Сообщения:
    39
    Симпатии:
    0
    Баллы:
    1
    С константой все получилось. Спасибо.
    --- Объединение сообщений, 29 мар 2016 ---

    Можете еще помочь избавиться от сотрудников и связанных с ними документами. руководитель и главный бухгалтер.
    Последнее редактирование: 29 мар 2016
  16. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Зайдите в константы... Там ссылки на руководители ГБ
    Николай7 нравится это.
  17. Николай7
    Offline

    Николай7

    Регистрация:
    16 июл 2014
    Сообщения:
    39
    Симпатии:
    0
    Баллы:
    1
    Сделал.Спасибо.
  18. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Не за что. Обращайтесь

Поделиться этой страницей