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

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

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

Оффлайн LastShine

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


Оффлайн Vladimir_Sh

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

Оффлайн LastShine

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


Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 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
Просмотров: 1712
Последний ответ 08 Фев 2016, 20:53
от Holic
Поиск стандартных процедур модуля формы из другой формы.

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

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

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

Ответов: 6
Просмотров: 2114
Последний ответ 16 Сен 2016, 14:58
от Bulatserg
Поиск по содержимому письма в 1с и вставить картинку в тело письма

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

Ответов: 0
Просмотров: 261
Последний ответ 12 Янв 2018, 11:42
от birusik
Поиск и замена способа отражения расходов в документе Передача материалов в эксплуатацию

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

Ответов: 5
Просмотров: 3040
Последний ответ 08 Авг 2015, 00:37
от Дмитрий@

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

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

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


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

* Реклама

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

СМОТРЕТЬ >>

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
152 Сообщений
oleg-x
69 Сообщений
alex0402
65 Сообщений
AIFrame AIFrame
54 Сообщений
wise wise
37 Сообщений
buketov.av buketov.av
36 Сообщений
KOI8-R
34 Сообщений
Alter
27 Сообщений
ilyay ilyay
26 Сообщений
trialex3
24 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal