Сорокин Сергей | Ведущий программист 1С | МоскоуСофт

«Удаленные сотрудники: учет и систематизация работы»

Многие из нас имеют возможность самостоятельно выбирать, как работать над проектами. И часто при ограниченных времени и бюджете есть возможность привлечь к сотрудничеству удаленного специалиста достаточно высокой квалификации. Без личной встречи, без подробного анализа резюме или даже возможности выдать тестовое задание ­ как можно безопасно привлечь к работе нового специалиста? Причем сделать это так, чтобы минимизировать свои риски, решить задачу за приемлемый срок и найти себе в команду нового сотрудника. План: -­ Бюджет. ­- Поиск и экспресс-­проверка квалификации. ­- Организация контроля. ­- Системы мотивации. - Информационная безопасность. ­- Оценка результатов работы. ­- Системы учета. Компетенции, ответственность, культура общения и поведения, интеллект.

Получить первое движение регистра

1. Black Cat 32 09.08.16 18:27 Сейчас в теме
Добрый день !
Есть регистр "Покупатели". Несколько лет назад была свертка базы. Мне нужно получить контрагентов, по которым было движение только документом ввода остатков в данный регистр при свертке, а потом движений не было. Как правильно написать запрос ?
Ответы
Сортировка: Древо
2. Noob001 09.08.16 20:48 Сейчас в теме
Как вариант:

СписокКонтрагентов = СоздатьОбъект("СписокЗначений");
ДокументВводаОстатков = СоздатьОбъект("Документ.ВводОстатковПокупателя");
ДокументВводаОстатков.Выбрать(ДатаВводаОстатков,ДатаВводаОстатков);
ДокументВводаОстатков.Получить() Цикл
СписокКонтрагентов.ДобавитьЗначение() = ДокументВводаОстатков.Контрагент(); //Получаешь список контрагентов которые были во вводе остатков

ЗапросАктивные = СоздатьОбъект("Запрос");
	ТекстЗапроса = 
	"//{{ЗАПРОС(ЗапросАктивные)
	|Период с ДатаВводаОстатков+1 по ДатаКонца; // Получаешь всех контрагентов которые совершали действия после ввода остатков
	|Контрагент = Регистр.Покупатели.Договор.Владелец;
	|СуммаРуб = Регистр.Покупатели.СуммаРуб;
	|Функция СуммаРубПриход = Приход(СуммаРуб);
	|Условие(Контрагент в СписокКонтрагентов);
	|Группировка Контрагент без групп;
	|"//}}ЗАПРОС
	;
	
	// Если ошибка в запросе, то выход из процедуры
	Если ЗапросАктивные.Выполнить(ТекстЗапроса) = 0 Тогда
		Возврат;
	КонецЕсли;

    Пока ЗапросАктивные.Группировка(1) = 1 Цикл
		ПозицияВСписке = СписокКонтрагентов.НайтиЗначение(ЗапросАктивные.Контрагент);
        Если ПозицияВСписке <> 0 Тогда
			СписокКонтрагентов.УдалитьЗначение(ПозицияВСписке); //Удаляешь из списка активных после ввода остатков
		КонецЕсли;	
	КонецЦикла;
Показать

//Остававшийся список будет содержать контрагентов которые есть во вводе остатков, но по ним не было никаких движений после.
Black Cat; +1 Ответить
3. Sanario 19 01.09.16 12:27 Сейчас в теме
(2), вот ответь на вопрос (ничего, что на ты?). А нельзя было запрос по контрагентам тоже через запрос сделать - все быстрее было бы? :) Кстати тут на сайте лежит классная штука позволяющая строить запросы, да еще и генерирующая текст запроса, да плюс еще и вывод предварительного результата. Правда работает только по одному из: регистр, справочник или документ, но кто мешает объединить?
Оставьте свое сообщение

Вакансии

Бизнес-аналитик 1С
Санкт-Петербург
зарплата от 80 000 руб. до 100 000 руб.
Полный день

Руководитель проектов по внедрению 1С документооборота
Санкт-Петербург
зарплата от 100 000 руб. до 130 000 руб.
Полный день

Руководитель по сопровождению и внедрению 1С
Санкт-Петербург
зарплата от 100 000 руб. до 120 000 руб.
Полный день

Программист 1С
Санкт-Петербург
Полный день

Ведущий специалист 1С
Москва
Полный день