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


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


Но лучше первый путь - потом посмотрите остались ли минусовые остатки.
...
Рейтинг: 0 / 0
04.04.2018, 14:23
    #39625528
арт2010
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
Программист 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
04.04.2018, 14:29
    #39625531
арт2010
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
А это проведение самого дока

Код: 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
04.04.2018, 18:09
    #39625678
AHDP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск и замена реквизита без перепроведения документа 1С7.7 - возможно ли и что получится?
арт2010,

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

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

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

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

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

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

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

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

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


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