Найти и изменить записи в периодическом регистре сведений (данными с Excell)

1. AlexeyMalko 28.12.16 16:51 Сейчас в теме
Подскажите как сделать обработку для изменения записей в регистре - данными с Excell. Есть табличка экселя в которой номер телефона и номер контракта и тарифный план нужно найти записи в регистре сведений по полю номер телефона и контракта и посмотреть если тарифный план отличается то сделать ещё одну запись в регистр. С экселя всё взял и не знаю что дальше делать (
Попытка
Эксель = новый COMОбъект("Excel.Application");


Исключение
Сообщить(ОписаниеОшибки());
Возврат;
КонецПопытки;
книга = Эксель.WorkBooks.Open("C:\Users\Downloads\IT_COPY\TP2016.xls");
Лист = Книга.WorkSheets(1);
таб = Лист.UsedRange.Value;
//Значение = Лист.Cells(2,2).Value;
Массив = таб.Выгрузить();
Массив.Удалить(0);
ВсегоСтрок = (Массив.Получить(0).количество())-1;
Показать
+
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Donpager 1 28.12.16 17:16 Сейчас в теме
каковы измерения в РС?
+
3. AlexeyMalko 28.12.16 17:52 Сейчас в теме
(2) измерение одно - НомерТелефона
+
4. AlexeyMalko 28.12.16 17:54 Сейчас в теме
ресурсы - тарифныйПлан, НомерСимКарты и Контракт. Как искать в нём значения. я уже сделал таблицу значений (может и не нужно) всё туда с экселя загрузил красиво чётко , н очто с регистром делать не могу придумать
+
5. Donpager 1 28.12.16 18:10 Сейчас в теме
В запросе к срезупоследних джоинишь табличку полученную из ёкселя, вяжешь по ключу телефона
и сравниваешь тарифный план, в отборе отсекаешь всё совпавшее. Создаешь новый набор по текущей дате и заполняешь его из запроса. Всё :)
+
6. Donpager 1 28.12.16 18:21 Сейчас в теме
ВЫБРАТЬ РАЗЛИЧНЫЕ
	ТЗ_эксель.Телефон,
	ТЗ_эксель.Контракт,
	ТЗ_эксель.Тариф
ПОМЕСТИТЬ тз_эксель
ИЗ
	&ТЗ_эксель КАК ТЗ_эксель
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	РС.телефон,
	РС.симка,
	РС.контракт,
	РС.тариф
ПОМЕСТИТЬ рс_Контакты
ИЗ
	&РС КАК РС
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	рс_Контакты.телефон,
	рс_Контакты.симка,
	рс_Контакты.контракт,
	рс_Контакты.тариф КАК СтарыйТариф,
	тз_эксель.Тариф КАК Тариф
ИЗ
	рс_Контакты КАК рс_Контакты
		ЛЕВОЕ СОЕДИНЕНИЕ тз_эксель КАК тз_эксель
		ПО рс_Контакты.телефон = тз_эксель.Телефон
ГДЕ
	ВЫБОР
			КОГДА тз_эксель.Тариф ЕСТЬ NULL 
				ТОГДА ЛОЖЬ
			КОГДА тз_эксель.Тариф = рс_Контакты.тариф
				ТОГДА ЛОЖЬ
			ИНАЧЕ ИСТИНА
		КОНЕЦ
Показать
+
7. Donpager 1 28.12.16 18:25 Сейчас в теме
Далее
НЗ = Регистрысведений.ИмяРег.СоздатьНаборЗаписей();
НЗ.Отбор.Период.Установить(ТекущаяДата());
НЗ.прочитать();
Пока Выборка.Следующий() Цикл
ЗаполнитьЗначениеСвойств(НЗ.Добавить(),Выборка);
КонецЦикла;
НЗ.Записать()
Показать
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот