powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
13 сообщений из 13, страница 1 из 1
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
    #39625506
арт2010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день, уважаемые. Проблема такая - есть справочник серии - периодический, подчиненный справочнику номенклатура. К сериям привязаны цены, тоже периодические. За 10 лет работы серий стало больше миллиона, пришлось удалять все до 01.2017. Ссылки на серии являются реквизитом в некоторых доках. Соответственно в некоторых за 2017-2018 гг., где были старые серии, введенные до 01.2017, они перестали существовать. И теперь такой товар на остатках как бы есть (см. скриншот), но не выписывается с остатков склада, пишет остаток 0, так как серии не указаны и соответственно неоткуда взять цену.
Существует ли обработка для замены таких реквизитов в доках без их перепроведения? Написал было свою, но без проведения не получается, а если его делать задним числом возникают ошибки вида "не хватает товара на складе"
В сети вроде есть обработки похожие, но все платные.
Есть варианты решения этой проблемы с учетом что нужно сверх указанного не просто поменять серии, а именно на нужную дату, так как год назад у одного и того же товара была одна серия с одной ценой, через полгода - уже другая с другой, сегодня - третья с третьей ценой
...
Рейтинг: 0 / 0
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
    #39625516
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уберите ругательство "нет остатков" и перепроводите.


А еще можно отключить перепроведение при записи.


Но лучше первый путь - потом посмотрите остались ли минусовые остатки.
...
Рейтинг: 0 / 0
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
    #39625528
арт2010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Программист 1с, подскажите пожалуйста как программно убрать это ругательство или отключить перепроведение при записи?
Без перепроведения дока серия у меня не меняется на правильную
Вот код обработки:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
Процедура ПриОткрытии()
	Дата1 = НачалоПериодаБИ();
	Дата2 = КонецПериодаБИ();
КонецПроцедуры

Процедура ИсправлениеСерий()
	ТЗ = СоздатьОбъект("ТаблицаЗначений");  
	ТЗ.НоваяКолонка("Наименование");  
	ТЗ.НоваяКолонка("Цена"); 
	ТЗ.НоваяКолонка("Ссылка"); 
	
	Сер = СоздатьОбъект("Справочник.Серии"); 
	Сер.ВыбратьЭлементы(0); 
	Пока Сер.ПолучитьЭлемент() = 1 Цикл 
        	ТЗ.НоваяСтрока();			  
			ТЗ.Наименование = Сер.Владелец; 							
			ТЗ.Цена = Сер.ЦенаРозничная.Получить(ТекущаяДата()); 
			ТЗ.Ссылка = Сер.ТекущийЭлемент();  
	КонецЦикла;  
							
	ТЗ.Сортировать("Наименование");	                                       
	
	Докум = СоздатьОбъект( "Документ" );
	Докум.ВыбратьДокументы( Дата1, Дата2 );
	
	Пока Докум.ПолучитьДокумент() = 1 Цикл     	
		  Если (Докум.Вид() = "ВыпискаВРозницу") Тогда 
		      	  Докум.СделатьНеПроведенным();
		          Докум.ВыбратьСтроки();
	                  Пока Докум.ПолучитьСтроку()=1 Цикл                    
				  ТекЗначение = Докум.Серия;
				  Товар = Докум.Товар;
  			    	  Если  ТекЗначение.Владелец <> Товар Тогда
                                       Поз = 1;
                                       ТЗ.НайтиЗначение(Товар,Поз,"Наименование"); 				
                                           
                                       Для ПозТЗ = Поз По (ТЗ.КоличествоСтрок()) Цикл
                                           ТЗ.ПолучитьСтрокуПоНомеру(ПозТЗ);
                                           Если ТЗ.Наименование<>Товар Тогда  
				                   Продолжить;
					   Иначе                       
                                                   Тмп= СоздатьОбъект("Справочник.Серии");
                                                   Тмп.НайтиЭлемент(ТЗ.ССылка);     
					           Докум.Серия = Тмп.ТекущийЭлемент();						                
					           Прервать;
					   КонецЕсли;
                                        КонецЦикла;				 	 	  	
                                  КонецЕсли;
                           КонецЦикла; 
	                  Докум.Провести();
		КонецЕсли;  
	КонецЦикла;
КонецПроцедуры 
...
Рейтинг: 0 / 0
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
    #39625531
арт2010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А это проведение самого дока

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
 
	Операция.Записать();


	Список_1 = СоздатьОбъект("СписокЗначений");
	Список_2 = СоздатьОбъект("СписокЗначений");
	ВыбратьСтроки();
	Пока ПолучитьСтроку() = 1 Цикл
		Список_1.ДобавитьЗначение(Товар);
		Список_2.ДобавитьЗначение(Серия);
	КонецЦикла;
	Ит = СоздатьОбъект("БухгалтерскиеИтоги");
	Ит.ИспользоватьСубконто(ВидыСубконто.Номенклатура, Список_1);
	Ит.ИспользоватьСубконто(ВидыСубконто.МестаХранения);
	Ит.ИспользоватьСубконто(ВидыСубконто.Серия, Список_2);
	Ит.ВыполнитьЗапрос(, РабочаяДата(), "41.1",,, 1, , "СК");
	Ит.ВыбратьСубконто();
	Пока Ит.ПолучитьСубконто() = 1 Цикл
		Если Ит.СКД("К") < 0 Тогда
			Ит.ВыбратьСубконто(2);
			Пока Ит.ПолучитьСубконто(2) = 1 Цикл
				Если Ит.СКД("К") < 0 Тогда
					Ит.ВыбратьСубконто(3);
					Пока Ит.ПолучитьСубконто(3) = 1 Цикл
						Если Ит.СКД("К") < 0 Тогда
							Сообщить("На складе нет нужного количества: " + Ит.Субконто(1) + " .Серия: " + Ит.Субконто(3));
						КонецЕсли;
					КонецЦикла;
				КонецЕсли;
			КонецЦикла;
		КонецЕсли;
	КонецЦикла;
КонецПроцедуры



...
Рейтинг: 0 / 0
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
    #39625678
AHDP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
арт2010,

Насколько помню - это настройка пользователя "контроль отрицателбных осьатков", но остатки "поплывут"

Чистить надо и поступления, и выбытия, тогда учет будет корректен и программа не будет ругаться при перепроведении.

А еще лучше восстановить нужные серии.
...
Рейтинг: 0 / 0
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
    #39625700
арт2010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я вычислил что если сделать свертку по 01.01.2018 (что уже не особо принципиально) и движения по товару в 2018 году не было, то чтобы вернуть его на остатки достаточно удалить строку в операциях, которые создает WRAP на 31.12.2017 и потом заново заприходовать этот же товар но уже с серией на 01.01.2018. Вопрос только что сделать с теми товарами, которые есть на остатках сейчас и по которым уже было движение в 2018 году?
А что даст восстановление серий? Если даже я набью их заново вручную именно на ту дату, на которую они были заданы, в самих доках то ссылки на них уже утрачены как я понимаю?
...
Рейтинг: 0 / 0
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
    #39625756
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
арт2010,

У вас БД скульная или ДБФ?
...
Рейтинг: 0 / 0
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
    #39625757
арт2010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dbf. Я так предполагаю предложите сделать поиском и заменой в самом dbf файле?
...
Рейтинг: 0 / 0
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
    #39625779
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
арт2010,

Ну тогда как вариант поднять архив до того как вы там накосячили. Правильно порезать базу. Перенести документы из существующей, правильно подобрав серии и т.п. Перепровести и радоваться жизни.
Дело это не быстрое. А если база сильно перепилена то вполне может быть что вылезут косяки о которых вы пока и не догадываетесь.
В общем сначала все шаманство делается на копии. Вылизывается весь механизм и только потом режется рабочая база. Это если делать по уму.
...
Рейтинг: 0 / 0
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
    #39625781
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Была б база скульной то перенос документов в непорезанную базу и работать пока не вылижите механизм урезания. Но вам не повезло.
...
Рейтинг: 0 / 0
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
    #39625788
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
    #39625903
AHDP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
арт2010 ,

Ссылки на удалённые объекты при непосредственном удалении не очищаются. Периодический реквизит справочника в ссылке фигурировать не может, там фигурирует его значение. ТИИ с параметрами Проверка логической целостности и Тестирование и исправление воссоздаст нужные объекты, но без заполнения их свойств. Если ничего не правили после чистки базы, то этого достаточно для восстановления работоспособности. Но, возможно, надо будет привязать воссозданные серии к номенклатуре.

Если правили, то после ТИИ, меняйте ссылки на некорректные серии в операции свёртки, и в документах списания (через поиск ссылок на объект, можно написать обработку) с перепроведением документов.

P.S.
Злой Бобр,
Разница между SQL и DBF только в необходимых знаниях и наличии софта.

P.P.S.
Программист 1с,
И что у него будет в движениях? Озвученную проблему это не решит, скорее наоборот.
...
Рейтинг: 0 / 0
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
    #39626399
арт2010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо за помощь. Реально помог последний совет - после ТИИ неопределенные серии поменялись на новые, правда пустые и не подчиненные нужной номенклатуре. Поэтому пришлось устанавливать цену и устанавливать нужный товар-владелец
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]