arefaste/1C_Forums huggingface dataset:
Здравствуйте! Есть такая проблема, дорабатывал расчет в зуп в разовых начислениях .По нажатию кнопки подбор табличная часть заполняется сотрудниками и производится расчет, но когда мы в текущем документе заполняем сотрудников подбором еще раз то у нас результат верный, а показатель уже не заполняется. Почему так может быть?

Под цифрой 2 то, что заполнялось через подбор с первого раза, под цифрой 3 сотрудники которые добавлены были подбором второй раз. Из скрина видно что значение показателя не заполнено.
---
Да, помогло. Переделал:

```1c
    Для Каждого Стр Из Объект.Начисления Цикл

    Для Итератор = 1 По ЭтаФорма.Показатели.Количество() Цикл

    Стр["Значение" + Итератор] = Доработки.ПечатнаяФормаГрафиковРаботы(Стр.ГрафикРаботы, Год(Объект.ДатаНачала));

    КонецЦикла;

    КонецЦикла;
```

Стало все заполняться, спасибо.
---
Что происходит в коде, кода нажимаете "одбор"Заполнение ТЧ происходит из ТЗ или там расчет какой то?
---
Завершается тем, что выполняется участок кода:

```1c
    Для Индекс = 0 По ВыбранноеЗначение.Количество() - 1 Цикл

    //Итератор = 0;

    Для Итератор = 1 По 100 Цикл

    Если Не объект.Начисления.Количество() = 0 Тогда

    Если объект.Начисления[Индекс].Свойство("Показатель" + Итератор) Тогда

    Если Строка(объект.Начисления[Индекс]["Показатель" + Итератор]) = "Среднее количество часов в месяце" Тогда

    объект.Начисления[Индекс]["Значение" + Итератор] = Доработки.ПечатнаяФормаГрафиковРаботы(объект.Начисления[Индекс].ГрафикРаботы, Год(Объект.ДатаНачала));

    КонецЕсли;

    КонецЕсли;

    КонецЕсли;

    КонецЦикла;

    КонецЦикла;
```

```1c
    объект.Начисления[Индекс]["Значение" + Итератор]
```
 у нас и есть значение данного показателя и в коде он расчитывается, при первом подборе попадает сюда же и все значения норм подставляются, в последующие разы в ТЧ не попадает ничего.
---
Посмотрите что за Итератор вы используете. почему он у вас от 1 до 100 ?
---
Видимо костыль ставили)
---
даже подправив итератор чтобы он не выходил за рамки количества показателей ошибка не уходит(
---
Жжжжуткий код - ровно в стиле ректального программирования!
Ну есть же
ДЛЯ КАЖДОГО ААААА ИЗ ВВВВВ ....
---
ну работает) правда не идеально)
---
Спасибо за наводку....попробую переделать под для Для Каждого
---
Да, помогло. Переделал:

```1c
    Для Каждого Стр Из Объект.Начисления Цикл

    Для Итератор = 1 По ЭтаФорма.Показатели.Количество() Цикл

    Стр["Значение" + Итератор] = Доработки.ПечатнаяФормаГрафиковРаботы(Стр.ГрафикРаботы, Год(Объект.ДатаНачала));

    КонецЦикла;

    КонецЦикла;
```

Стало все заполняться, спасибо.
Здравствуйте, подскажите пожалуйста как реализовать автоматическое заполнение ячеек в Требовании-накладной:

В шапке поле "Склад", нажимаем:

и видим:

Как сделать чтобы "Подразделение затрат" = СТРОЙКА с последнего скрина влияло на автоматическое заполнение колонки "Подразделение затрат" в табличной части?
---
Сделал так:

```1c
    &НаСервере
    Функция МатериалыПриИзмененииНаСервере()
    Возврат Объект.Склад.ПодразделениеЗатрат;
    КонецФункции

    &НаКлиенте
    Процедура МатериалыПриИзменении(Элемент)

    Элемент.ТекущиеДанные.ПодразделениеЗатрат = МатериалыПриИзмененииНаСервере();
    //УправлениеФормой(ЭтаФорма);

    КонецПроцедуры

    Попытался сделать что-то похожее со следующей колонкой "Объект", мой код:
    &НаСервере
    Функция МатериалыПриИзмененииНаСервере()
    //Возврат Объект.Склад.ПодразделениеЗатрат;
    Возврат Объект.Объект.Наименование;
    КонецФункции

    &НаКлиенте
    Процедура МатериалыПриИзменении(Элемент)

    //Элемент.ТекущиеДанные.ПодразделениеЗатрат = МатериалыПриИзмененииНаСервере();
    Элемент.ТекущиеДанные.Объект = МатериалыПриИзмененииНаСервере();
    //УправлениеФормой(ЭтаФорма);

    КонецПроцедуры
```

конфигурация сохранилась без ошибок. Открыл 1С, при создании новой строки вылетает предупреждение: "Поле объекта не обнаружено (Объект)", думаю косяк здесь: Возврат Объект.Объект.Наименование;
Не подскажете?
---
При изменении номенклатуры прописать такой код:

```1c
    //Это при условие что справочники разные.
    ЭлементыФормы.ТекущиеДанные.ПодразделениеЗатрат = Справочники.ПодразделенияЗатрат.НайтиПоНаименованию(Склад.Наименование);
    //Если это один и тот же справочник, то так:
    ЭлементыФормы.ТекущиеДанные.ПодразделениеЗатрат = Склад;
```

В случае с подбором, там надо искать, где добавляется код и по аналогии вставить.
---
Сообщение было скрыто модератором.
---
Сделал так:

```1c
    &НаСервере
    Функция МатериалыПриИзмененииНаСервере()
    Возврат Объект.Склад.ПодразделениеЗатрат;
    КонецФункции

    &НаКлиенте
    Процедура МатериалыПриИзменении(Элемент)

    Элемент.ТекущиеДанные.ПодразделениеЗатрат = МатериалыПриИзмененииНаСервере();
    //УправлениеФормой(ЭтаФорма);

    КонецПроцедуры

    Попытался сделать что-то похожее со следующей колонкой "Объект", мой код:
    &НаСервере
    Функция МатериалыПриИзмененииНаСервере()
    //Возврат Объект.Склад.ПодразделениеЗатрат;
    Возврат Объект.Объект.Наименование;
    КонецФункции

    &НаКлиенте
    Процедура МатериалыПриИзменении(Элемент)

    //Элемент.ТекущиеДанные.ПодразделениеЗатрат = МатериалыПриИзмененииНаСервере();
    Элемент.ТекущиеДанные.Объект = МатериалыПриИзмененииНаСервере();
    //УправлениеФормой(ЭтаФорма);

    КонецПроцедуры
```

конфигурация сохранилась без ошибок. Открыл 1С, при создании новой строки вылетает предупреждение: "Поле объекта не обнаружено (Объект)", думаю косяк здесь: Возврат Объект.Объект.Наименование;
Не подскажете?
Доброго всем времени!

прошу помощи зала -
есть самописка на УФ 8.3.10 на базе БСП.

Форма документа, на нее выведена табличная часть.
В числе прочих колонок есть 3 (субконто1, субконто2, субконто3) - в конфигураторе задана одинаковая ширина, стоит признак "не растягивать".
В конфигураторе при проверке формы все отлично.

При открытии формы в предприятии - одна колонка узкая, 2 и 3 разъезжаются.
Если "установить стандартные настройки" - делается нормально, но при повторном открытии опять плохо(

В форме ни одной процедуры нет.

Подумал что настройка где-то сохранилась - удалил все настройки всех пользователей БСП-шные (настройка пользователей и прав, персональные настройки пользователей) - не помогло.

Куда еще можно глянуть?
---
удалите профиль пользователя, почистите кеш, зайдите заново.
можно удалить базу из списка информационных баз и добавить заново.
---
ЗЫ - проблема где-то в хранении настроек все-таки. Под другим пользователем, который ранее не заходил все хорошо.
---
удалите профиль пользователя, почистите кеш, зайдите заново.
можно удалить базу из списка информационных баз и добавить заново.
Здравствуйте.
Попытаюсь описать на словах довольно мутный вопрос )
Создал XDTO пакет с такими типами:
1. тип значения "СтрокаТабЧасти" с нескольким свойствами-атрибутами (тип самих атрибутов не важен), к примеру Номенклатура и Количество.
2. тип "Результат" со свойством-элементом "СтрокиТабЧасти" с типом вышеуказанным "СтрокаТабЧасти". Т.к. строк может много то в этом свойстве указал макс. значение равным -1.
При этом вот что получается:
Если строк "СтрокиТабЧасти" больше одной, то тип свойства "СтрокиТабЧасти" возвращается равным типу СписокXDTO, и к нему соответственно просто можно достучаться через конструкцию вида:
Для Каждого Эл Из Результат.СтрокиТабЧасти
Однако если в свойстве СтрокиТабЧасти содержится только одна строка вида "СтрокаТабЧасти", то тип возвращаемого свойства будет уже не СписокXDTO, а просто ОбъектXDTO и операция получения Для Каждого Эл Из Результат.СтрокиТабЧАсти будет вызвать уже ошибку.
Поэтому при решении "в лоб" сначала проверить что за тип возвращен, потом если это список- получать значения через Цикл, если не список - то напрямую. но как-то это криво и замудренно.

Собственно вопросы: можно-ли как-то сделать чтобы тип возвращаемого значения был всегда СписокХДТО, даже при единственном объекте внутри списка, чтобы не делать дополнительные проверки?

В примерах обычно делают так: типом свойства СтрокиТабЧасти указывают не тип отделной строки СтрокаТабЧАсти, а создают еще дополительный множественный тип, например назовем его МассивСтрокТабЧАсти (состоящий из отдельных строк СтрокаТабЧасти) и уже этот тип указывают свойству СтрокиТабЧасти, тогда возвращаемое значение всегда будет списком, но при этом нужно создавать дополнительные типы всех "списков" что тоже не очень хорошо и усложняет понимание.
Как сделать по-другому?
PS Выкладывать саму реальную xsd схему думаю не имеет смысла, т.к. она довольно большая, много лишнего..
---
Буквально сегодня встретил эту задачу. Думать не хотелось - быстро накостылял такой код

```1c
    Если ТипЗнч(Входящее)=Тип("ОбъектXDTO") тогда
    Массив = Новый Массив;
    Массив.Добавить(Входящее);
    СписокОбхода=Массив;
    Иначе
    СписокОбхода=Входящее;
    КонецЕсли;
```
---
Буквально сегодня встретил эту задачу. Думать не хотелось - быстро накостылял такой код

```1c
    Если ТипЗнч(Входящее)=Тип("ОбъектXDTO") тогда
    Массив = Новый Массив;
    Массив.Добавить(Входящее);
    СписокОбхода=Массив;
    Иначе
    СписокОбхода=Входящее;
    КонецЕсли;
```
---
Спасибо за ваш вариант, пока наверное так и сделаю. Хотелось-бы конечно сразу список как-то получить на строне клиента, но видать не судьба это. Притом заметил что на стороне веб-сервера когда даже одно значение, то это свойство имеет тип СписокХДТО, а когда это-же свойство получается клиентом оно уже становится просто объектом, т.е. скорее всего ошибка конвертации в хмл и обратно присутствует.
Как правильно получить дату в запросе?

Например:

```1c
    ВЫБРАТЬ
    "Николай" КАК Человек,
    Дата(20181220) КАК Дата1
```
---
только так

```1c
    ДАТАВРЕМЯ(2018, 12, 31)
```

преобразование типа строка в дату в запросе не работает
---
только так

```1c
    ДАТАВРЕМЯ(2018, 12, 31)
```

преобразование типа строка в дату в запросе не работает
---
https://infostart.ru/public/170336/
Выразить строку как число и строку как дату в запросе, попробуйте
---
есть варианты для мазохистов с ПОДСТРОКА и ВЫБОР КОГДА, но это дикое извращение
---
Спасибо
---
Спасибо.
Под полными правами(Роль "Полные права") команда "История изменений" в подменю "Все действия" формы элемента видна, а как её добавить пользователю с базовыми правами?
Дал пользователю права на роли "ЧтениеВерсийОбъектов" и "ЧтенииИнформацииОВерсияхОбъектов", но не помогло. Команда не видна.

Знает ли кто-нибудь решение?
---
Нашёл, в роли у объекта необходимо выставить права.
---
Нашёл, в роли у объекта необходимо выставить права.
Доброго времени суток!

Очень прошу вашей помощи, не могу никак разобраться, в чем ошибка:
Нужно создать условие маршрутизации в Документообороте (см. скрин), которое бы выдавало истину, если у предмета (документа то есть) в доп. реквизите "Вид договора" стоит "Доходный".

Пробовала двумя способами.
Первый:

```1c
    Результат = Ложь;
    Если АвтозаполнениеШаблоновФайловСервер.ПолучитьЗначениеДопРеквизитаОбъекта(Предмет.Ссылка, "Вид договора") = "Доходный" Тогда
    Результат = Истина;
    КонецЕсли
```

Всегда выдает Ложь.

Пробовала получать объект из Предмета и подставлять вместо Предмет.Ссылка - выдает ошибку
Ошибка.
{(10, 24)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
 неограниченной длины и поля несовместимых типов.
ТаблицаСвойств.Ссылка <<?>>= &ВладелецСвойств
Честно говоря, не понимаю, что это значит

Второй вариант:

```1c
    Результат = Ложь;
    Для Каждого ДопРеквизит Из Предмет.ДополнительныеРеквизиты Цикл
    Если ДопРеквизит.Свойство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Вид договора") Тогда
    Если ДопРеквизит.Значение = "Доходный" Тогда
    Результат = Истина;
    КонецЕсли;
    КонецЕсли;
    КонецЦикла;
```

Тоже все время выдает "Ложь"...
---
Все дело оказалось только лишь в том, что нужно было отсечь лишние пробелы при сравнении доп реквизита... %)))

```1c
    СокрЛП(АвтозаполнениеШаблоновФайловСервер.ПолучитьЗначениеДопРеквизитаОбъекта(Предмет.Ссылка, "Вид договора"))
```
---
Все дело оказалось только лишь в том, что нужно было отсечь лишние пробелы при сравнении доп реквизита... %)))

```1c
    СокрЛП(АвтозаполнениеШаблоновФайловСервер.ПолучитьЗначениеДопРеквизитаОбъекта(Предмет.Ссылка, "Вид договора"))
```
---
Вы хотя бы вынесите из цикла следующую строку:
ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Вид договора")
Расширение; в нем сделал документ. Что надо сделать, чтобы в документе появилась структура ДополнительныеСвойства?

Бух. 3.0.65.84, 8.3.12.1529
---
эта структура создается платформой и доступна в определенных обработчиках
---
эта структура создается платформой и доступна в определенных обработчиках
---
Точно. В объекте есть, а я смотрел в ссылке.
Спасибо
Добрый день!
1С:ERP 2.4.6.174; Платформа 8.3.12.1685

Ранее (в релизах ERP 2.1 и 2.2) использовался План видов характеристик "РазделыДатЗапретаИзменения" для добавления своего раздела дат запрета, где в предопределённых элементах был список разделов. Добавил новый, после чего в общем модуле "ДатыЗапретаИзмененияУТ" разрешалось написать что-то вроде следующего:

```1c
    ДатыЗапретаИзменения.ДобавитьСтроку(ИсточникиДанных, "Документ.NewДокумент", "Дата", "NewРаздел", ");
```

и четвёртым параметром указать добавленный ранее раздел. Но сейчас все элементы Плана видов характеристик "РазделыДатЗапретаИзменения" имеют приписку "Удалить..." и схема не работает. Новый механизм не удалось найти.
Каким образом можно добавить новый раздел в механизм "дат запрета редактирования" (в актуальных релизах конфигураций на УФ, и в частности в ERP)?
---
общий модуль - ДатыЗапретаРедактированияПереопределяемые
Вопрос закрыт
---
ап
---
общий модуль - ДатыЗапретаРедактированияПереопределяемые
Вопрос закрыт
Поделитесь, пожалуйста, консолью запросов под тонкий клиент с конструктором.
Чего-то не могу найти ...
---
почту в личку чиркани
---
С диска ИТС не предлагать?
---
с итс только в толстом конструктор работает
---
нет

http://prntscr.com/lwcdvs

Не с этим спутали?
http://prntscr.com/lwce0v
---
с конструктором запроса? Держи)
---
Ну эта то и у меня есть, неудобная жуть
---
вот, подрихтовал QueryConsoleThinClient_8.3.5.epf
---
Спасибо, стало реально удобнее)
---
Спасибо.
---
почту в личку чиркани
---
Лучше этой я пока не видел
https://infostart.ru/public/335504/
Здравствуйте.
УТ 11.4.
У документа Сборка товаров добавлен в реквизит документа основания (реквизит называется ЗаказНаСборку) добавлен документ ЗаказКлиента. Документ создается при необходимых условиях программно при проведении Заказа клиента. Однако при формировании из заказа клиента структуры подчиненности не виден в структуре подчиненности этот документ. В документе (Ввод на основании) он добавлен (установлена галочка). Что не так, что нужно еще доделать чтобы в структуру подчиненности подтягивался необходимый документ?
Спасибо.
---
Дополню (3). В Общие.КритерииОтбора.СвязанныеДокументы в реквизит Тип нужно добавить свои документы, в реквизите Состав нужно включить флаг для ссылочных реквизитов.
---
Из сборки в связных документах тоже не видно заказа клиента.
---
Есть такая штука "Критерий отбора".
---
Дополню (3). В Общие.КритерииОтбора.СвязанныеДокументы в реквизит Тип нужно добавить свои документы, в реквизите Состав нужно включить флаг для ссылочных реквизитов.
---
Спасибо.
---
Критерий отбора
http://1clancer.ru/article/kriterii_otbora_iznutri_805
Задача 1.13 1с Специалист - как все таки более правильно (желательно с точки зрения экзаменатора) заводить стеллажи - через отдельный справочник или в справочнике Номенклатура с меткой "Это стеллаж". На мой взгляд вариант с отдельным справочником вполне приемлемый.
---
Но если подходить к задаче строго по условию - то есть стеллажи и есть детали.
Справочник один Номенклатура. Не надо плодить сущности.

Ещё раз. Если у номенклатуры есть комплектующие то списываются комплектующие, если нет, то списывается сама номенклатура, а стеллаж она или салат в этой задаче не важно.
В разборе этой задаче на сколько помню добавляется только регистр который хранит состав стеллажа.
---
На материалы отдельный справочник, на гсм, на услуги, да? Вид номенклатуры надо делать
---
Если речь про задачу где надо собирать стеллажи и учитывать комплектующие то не надо никаких справочников заводить.
Нужен регистр сведений который хранит состав комплекта. Далее в запросе уже проверять есть состав в регистре для этого этой номенклатуры тогда списывать его комплектующие.
---
Регистр сведений с составами стеллажей - само собой. Вопрос - вводить ли отдельный справочник для стеллажей (для названий стеллажей), а в Номенклатуре оставлять только детали. Из "реальной жизни" согласен, что если из картошки, морковки, и майонеза делаем салаты, то на салаты отдельного справочника не будет. Но если подходить к задаче строго по условию - то есть стеллажи и есть детали. И все. Соответственно два справочника - Стеллажи и детали. А самый интересный вопрос - как считают экзаменаторы.
---
Но если подходить к задаче строго по условию - то есть стеллажи и есть детали.
Справочник один Номенклатура. Не надо плодить сущности.

Ещё раз. Если у номенклатуры есть комплектующие то списываются комплектующие, если нет, то списывается сама номенклатура, а стеллаж она или салат в этой задаче не важно.
В разборе этой задаче на сколько помню добавляется только регистр который хранит состав стеллажа.
---
ОК, спасибо!
Приветствую.

Помогите восьмерочнику, пожалуйста,в 7.7.

Есть табличная часть документа (многострочная часть).
Нужно по значению одного из реквизитов в первой строке заполнить этот же реквизит в остальных строках тч.

```1c
    ВыбратьСтроки();

    Данные = ПолучитьСтрокуПоНомеру(1);

    Пока ПолучитьСтроку() = 1 Цикл
    ФИО = Данные.ФИО;
    КонецЦикла;
```

Не работает(
---
Не работает( Неудивительно: ПолучитьСтрокуПоНомеру(1) возвращает 0 или 1, а не ссылку на первую строку.

Надо так:

```1c
    ФИО1=";
    Если ПолучитьСтрокуПоНомеру(1)=1 Тогда
    ФИО1 = ФИО;
    КонецЕсли;

    ВыбратьСтроки();
    ПолучитьСтроку() // пропускаем 1-ю строку
    Пока ПолучитьСтроку() = 1 Цикл
    ФИО = ФИО1;
    КонецЦикла;
```
---
Не работает( Неудивительно: ПолучитьСтрокуПоНомеру(1) возвращает 0 или 1, а не ссылку на первую строку.

Надо так:

```1c
    ФИО1=";
    Если ПолучитьСтрокуПоНомеру(1)=1 Тогда
    ФИО1 = ФИО;
    КонецЕсли;

    ВыбратьСтроки();
    ПолучитьСтроку() // пропускаем 1-ю строку
    Пока ПолучитьСтроку() = 1 Цикл
    ФИО = ФИО1;
    КонецЦикла;
```
---
Гранд мерси тебе, добрый человек)
Конфа типовая БП3.0

```1c
    Функция СоздатьПолучитьСубконто(Наименование)

    Сообщить(Наименование);
    СпрПрочиеДоходыРасходы = Справочники.ПрочиеДоходыИРасходы;
    Ссылка = СпрПрочиеДоходыРасходы.НайтиПоНаименованию(Наименование);
    Если Ссылка = НЕОПРЕДЕЛЕНО Тогда
    НовыйЭлемент = Справочники.ПрочиеДоходыИРасходы.СоздатьЭлемент();
    НовыйЭлемент.Наименование = Наименование;
    НовыйЭлемент.ВидПрочихДоходовИРасходов = Перечисления.ВидыПрочихДоходовИРасходов.ПроцентыКПолучениюУплате;
    НовыйЭлемент.ВидДеятельностиДляНалоговогоУчетаЗатрат = Перечисления.ВидыДеятельностиДляНалоговогоУчетаЗатрат.ОсновнаяСистемаНалогообложения;
    НовыйЭлемент.ПринятиеКналоговомуУчету = Истина;
    НовыйЭлемент.Записать();
    Сообщить("Новый "+НовыйЭлемент.Ссылка.Наименование);
    возврат НовыйЭлемент.Ссылка;
    ИначеЕсли Ссылка = Справочники.ПрочиеДоходыИРасходы.ПустаяСсылка() Тогда
    НовыйЭлемент = Справочники.ПрочиеДоходыИРасходы.СоздатьЭлемент();
    НовыйЭлемент.Наименование = Наименование;
    НовыйЭлемент.ВидПрочихДоходовИРасходов = Перечисления.ВидыПрочихДоходовИРасходов.ПроцентыКПолучениюУплате;
    НовыйЭлемент.ВидДеятельностиДляНалоговогоУчетаЗатрат = Перечисления.ВидыДеятельностиДляНалоговогоУчетаЗатрат.ОсновнаяСистемаНалогообложения;
    НовыйЭлемент.ПринятиеКналоговомуУчету = Истина;
    НовыйЭлемент.Записать();
    Сообщить("Новый "+НовыйЭлемент.Ссылка.Наименование);
    возврат НовыйЭлемент.Ссылка;
    Иначе
    Сообщить ("Код "+Ссылка.Код);
    Сообщить("Нашли "+Ссылка.Наименование);
    Возврат Ссылка;
    КонецЕсли;

    КонецФункции
```

в результате программа выдает
{ВнешняяОбработка.РасчетПроцентов.Форма.Форма.Форма(125)}: Поле объекта не обнаружено (Код)
  Сообщить ("Код"+Ссылка.Код);

Что такое программа находит, что не является ни пустой ссылкой и Null
Думал еще что находит группу, но справочник - одноуровневый...
---
В Если у вас два одинаковых куска кода при выполнении двух условий. Объедините в ИЛИ.

Отладчик запускали? А реквизитов формы с именем "Ссылка" нет?
---
В Если у вас два одинаковых куска кода при выполнении двух условий. Объедините в ИЛИ.

Отладчик запускали? А реквизитов формы с именем "Ссылка" нет?
---
Да. Действительно есть реквизит формы с именем ссылка ...
Уважаемые форумчане, как в 1с реализовать комбинирование шариков коробку, зная что в коробку может поместиться 4 шарика, а шариков у нас всего 6. И у шариков например разные цвета к примеру 2 зеленых, 1 синий и 3 красных
---
Был неправ, вспылил, не серчай. Сильно башка с утра трещала. В общем, вот, наговнокодил) Произвольное количество шариков, произвольное количество цветов, произвольное количество в коробке.
---
ну наверное пробовать так:
1. Брать пустую коробку и помещать по одному, с проверкой на цвет и количество, когда заполнится первая коробка - брать вторую новую пустую или незаполненную старую и выполнять те же действия снова!)
---
Почитать книжку по программированию не предлагать?
---
Если потроллить зашел то ты темой ошибся
---
Зачем потроллить? Комбинаторика рассматривается в любой книжке по программированию в первых главах. Тебе процедурку за тебя написать?
---
Во первых она описывается не в любой книжке по программированию, так как это раздел Теории вероятности, а во-вторых 1с довольно специфический язык программирования
---
Ну, не такой уж и специфический, паскаль плюс-минус, циклы есть, массивы есть, да до фига чего есть, что еще нужно-то?
---
Был неправ, вспылил, не серчай. Сильно башка с утра трещала. В общем, вот, наговнокодил) Произвольное количество шариков, произвольное количество цветов, произвольное количество в коробке.
---
можно и без комбинаторики, а запросами - правда в любом варианте необходимы затраты на покупку мозга
Здравствуйте! Такая проблема. Имеется 8000 позиций номенклатуры, у каждой от двух до пятнадцати дублей. Бухгалтерия 2.0. Типовые обработки удаляют все очень долго за день около 100 позиций. Подскажите, может есть обработки которые делают все гораздо быстрее? или только самому крутиться и писать?
---
Думаю сами если только сделаете. 100 позиций это маловато даже для стандартной, конечно если идет большое движение, то тут врятли получится ускорить
---
Думаю сами если только сделаете. 100 позиций это маловато даже для стандартной, конечно если идет большое движение, то тут врятли получится ускорить
---
видимо так...)
---
У стандартной есть один недостаток, который можно убрать только написав свою.
Стандартная меняет все по очереди. Если переписать под пакетную замену, то будет быстрее в разы.
То есть есть три номенклатуры дублей, стандартная три раза будет менять документ, хотя можно было бы за один заход.
---
попробуйте в типовой посмотреть где долго и оптимизировать, но думаю типовая - лучшее решение
---
Где долго. я писал выше. Так что там ничего не оптимизировать.
Проще написать заного. Типовая не предназначена для больших объемов данных. В 90% её достаточно.
---
просто думал что по-любому кто-то с этим сталкивался и уже написал))
---
С вероятностью 99% кто то да написал, а вот выложить, может и не выкладывали в общий доступ.
---
спасибо за наводку) буду писать)
---
советовало на просторах инфостарта посмотреть)