Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
22 Янв 2017, 23:19
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Поиск свободного числа в диапозоне  (Прочитано 572 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн LastShine

  • *
  • Сообщений: 9
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-06
  • Сайт: 
  • Профессия: Ученик 1С
Нужна помощь. Суть дела такова есть номера карточек в справочнике, от 1 до 9999, потом когда все номера используются и часть удаляется по определенному критерию. Какой должен быть алгоритм, что при создании новой записи в справочнике автоматически искалось следующее свободное значение после последеего записанного и вписывалось в элемент.

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>


Оффлайн Vladimir_Sh

  • 1С:Специалист
  • ****
  • Сообщений: 348
  • РЕПУТАЦИЯ: 65
  • КПД: 19%
  • Регистрация: 2015-10-16
  • Сайт: 
  • Профессия: Разработчик 1С
LastShine, сложно конечно сказать не зная логики освобождения номеров, но может наведу на мысль:)
С помощью запроса выберите все номера, далее в нем же получите признак (некое поле Булево) какие из них заняты поставьте условие и отсортируйте. Если позволяет структура данных сразу получайте не занятые, а далее уже делайте как считаете нужным: получайте первую/последнюю запись, отбирайте и т.д.
Если я Вам помог, нажми - Спасибо!

Оффлайн LastShine

  • *
  • Сообщений: 9
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-06
  • Сайт: 
  • Профессия: Ученик 1С
LastShine, сложно конечно сказать не зная логики освобождения номеров, но может наведу на мысль:)
С помощью запроса выберите все номера, далее в нем же получите признак (некое поле Булево) какие из них заняты поставьте условие и отсортируйте. Если позволяет структура данных сразу получайте не занятые, а далее уже делайте как считаете нужным: получайте первую/последнюю запись, отбирайте и т.д.
Наверное так не получится потому что удаляется вся строка а не только элемент с номером. Условие очищение такого, у этой карточки когда поручение по ней выполнено, проставляется дата,  после все карточки у которых поле дата исполнения заполнены удаляются. И надо что бы на их места писались новые)


Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
В качестве идеи:
ТЗ=Новый ТаблицаЗначений;
ТЗ.Колонки.Добавить("Нумератор",Новый ОписаниеТипов("Число"));

Для ее=1 По 99999 Цикл
НовСтрока=ТЗ.Добавить();
НовСтрока.Нумератор=ее;
КонецЦикла;


Запрос = Новый Запрос;
Запрос.Текст =
    "ВЫБРАТЬ
    | ТЗ.Нумератор КАК Нумератор
    |ПОМЕСТИТЬ Таб
    |ИЗ
    | &ТЗ КАК ТЗ
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ
    | ВЫБОР
    | КОГДА Клиенты.Код ЕСТЬ NULL
    | ТОГДА ЛОЖЬ
    | ИНАЧЕ ИСТИНА
    | КОНЕЦ КАК НомерЗанят,
    | Таб.Нумератор
    |ПОМЕСТИТЬ вт1
    |ИЗ
    | Таб КАК Таб
    | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Клиенты КАК Клиенты
    | ПО Таб.Нумератор = Клиенты.Код
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ
    | МИНИМУМ(вт1.Нумератор) КАК Нумератор
    |ИЗ
    | вт1 КАК вт1
    |ГДЕ
    | НЕ вт1.НомерЗанят";

Оффлайн LastShine

  • *
  • Сообщений: 9
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-06
  • Сайт: 
  • Профессия: Ученик 1С
В качестве идеи:
ТЗ=Новый ТаблицаЗначений;
ТЗ.Колонки.Добавить("Нумератор",Новый ОписаниеТипов("Число"));

Для ее=1 По 99999 Цикл
НовСтрока=ТЗ.Добавить();
НовСтрока.Нумератор=ее;
КонецЦикла;
Это интересно, попробую, спасибо

Запрос = Новый Запрос;
Запрос.Текст =
    "ВЫБРАТЬ
    | ТЗ.Нумератор КАК Нумератор
    |ПОМЕСТИТЬ Таб
    |ИЗ
    | &ТЗ КАК ТЗ
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ
    | ВЫБОР
    | КОГДА Клиенты.Код ЕСТЬ NULL
    | ТОГДА ЛОЖЬ
    | ИНАЧЕ ИСТИНА
    | КОНЕЦ КАК НомерЗанят,
    | Таб.Нумератор
    |ПОМЕСТИТЬ вт1
    |ИЗ
    | Таб КАК Таб
    | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Клиенты КАК Клиенты
    | ПО Таб.Нумератор = Клиенты.Код
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ
    | МИНИМУМ(вт1.Нумератор) КАК Нумератор
    |ИЗ
    | вт1 КАК вт1
    |ГДЕ
    | НЕ вт1.НомерЗанят";


Теги:
 

Поиск в справочнике "Номенклатура" в УТ 11

Автор HolicРаздел Пользователям "1С - Предприятие 8"

Ответов: 0
Просмотров: 753
Последний ответ 08 Фев 2016, 20:53
от Holic
Поиск стандартных процедур модуля формы из другой формы.

Автор Дамир ТлеухановРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 329
Последний ответ 18 Авг 2016, 11:50
от MuI_I_Ika
Как установить "Поиск по точному совпадению" по умолчанию?

Автор BulatsergРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 598
Последний ответ 16 Сен 2016, 14:58
от Bulatserg
Поиск и замена способа отражения расходов в документе Передача материалов в эксплуатацию

Автор Елена ПлаксинаРаздел Пользователям "1С - Предприятие 8"

Ответов: 5
Просмотров: 1537
Последний ответ 08 Авг 2015, 00:37
от Дмитрий@
Поиск в основной форме обработки ссылок на формирование табличной части

Автор Nail2010Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 5
Просмотров: 2728
Последний ответ 21 Дек 2010, 10:02
от Nail2010

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
171 Сообщений
alex0402
65 Сообщений
MuI_I_Ika MuI_I_Ika
47 Сообщений
crow1983
35 Сообщений
alexandr_ll
33 Сообщений
LexaK
32 Сообщений
sertak sertak
25 Сообщений
Vzonder
22 Сообщений
BuhRust
17 Сообщений
дфтын дфтын
17 Сообщений

* Кто онлайн

  • Точка Гостей: 271
  • Точка Скрытых: 0
  • Точка Пользователей: 2
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 

Dellos Catering - выездной ресторан кейтеринг по всему Миру
SimplePortal 2.3.5 © 2008-2012, SimplePortal