Не могу понять где ошибка в коде!

1. G_104934483046630663621 04.10.24 05:50 Сейчас в теме
ВысотаДвери = ПараметрНачало#[Размеры]#[Размер по дверной коробке мм. (ВхШ)]#[Высота]#ПараметрКонец;
ШиринаДвери = ПараметрНачало#[Размеры]#[Размер по дверной коробке мм. (ВхШ)]#[Ширина]#ПараметрКонец;
Полотно70 = ПараметрНачало#[Конструктив дверного полотна (вид профиля справочно)]#[Не менее 70мм]#[ВыбранноеЗначение]#ПараметрКонец;
Металл2мм = ПараметрНачало#[Толщина металла дверной коробки мм.]#[2.0 мм.]#[ВыбранноеЗначение]#ПараметрКонец;

КоэфициентПлюса = 1.15;
Габарит = 2500;

ВысотаДоски = 0;
Если Металл2мм = Истина Тогда
    ВысотаДоски = 265;
ИначеЕсли Полотно70 = Истина Тогда
    ВысотаДоски = 245;
Иначе
    ВысотаДоски = 235;
КонецЕсли;

ДопВысота = 0;
ДопШирина = 0;

ВЫБОР
	КОГДА ПараметрНачало#[Наличники]#[Без наличника сверху]#[ВыбранноеЗначение]#ПараметрКонец = Истина ТОГДА
		ДопШирина = 130;
	КОГДА ПараметрНачало#[Наличники]#[Без наличника слева]#[ВыбранноеЗначение]#ПараметрКонец = Истина ТОГДА
		ДопШирина = 65;
		ДопВысота = 65;
	КОГДА ПараметрНачало#[Наличники]#[Без наличника слева и сверху]#[ВыбранноеЗначение]#ПараметрКонец = Истина ТОГДА
		ДопШирина = 65;
	КОГДА ПараметрНачало#[Наличники]#[Без наличника справа]#[ВыбранноеЗначение]#ПараметрКонец = Истина ТОГДА
		ДопШирина = 65;
		ДопВысота = 65;
	КОГДА ПараметрНачало#[Наличники]#[Наличник 50мм. [2мм]]#[ВыбранноеЗначение]#ПараметрКонец = Истина ТОГДА
		ДопШирина = 100;
		ДопВысота = 50;
	КОГДА ПараметрНачало#[Наличники]#[Наличник 65мм.]#[ВыбранноеЗначение]#ПараметрКонец = Истина ТОГДА
		ДопШирина = 130;
		ДопВысота = 65;
	КОГДА ПараметрНачало#[Наличники]#[Без наличника справа и сверху]#[ВыбранноеЗначение]#ПараметрКонец = Истина ТОГДА
		ДопШирина = 65;
	КОГДА ПараметрНачало#[Наличники]#[Без наличника справа и слева]#[ВыбранноеЗначение]#ПараметрКонец = Истина ТОГДА
		ДопВысота = 65;
	КОГДА ПараметрНачало#[Наличники]#[Наличник 100мм.]#[ВыбранноеЗначение]#ПараметрКонец = Истина ТОГДА
		ДопШирина = 200;
		ДопВысота = 100;
	КОГДА ПараметрНачало#[Наличники]#[Наличник 150мм.]#[ВыбранноеЗначение]#ПараметрКонец = Истина ТОГДА
		ДопШирина = 300;
		ДопВысота = 150;
	КОГДА ПараметрНачало#[Наличники]#[Наличник 200мм.]#[ВыбранноеЗначение]#ПараметрКонец = Истина ТОГДА
		ДопШирина = 400;
		ДопВысота = 200;
	КОГДА ПараметрНачало#[Наличники]#[Наличник 47мм.]#[ВыбранноеЗначение]#ПараметрКонец = Истина ТОГДА
		ДопШирина = 94;
		ДопВысота = 94;
	ИНАЧЕ
		ДопШирина = 0;
		ДопВысота = 0;
КОНЕЦ;

Если ВысотаДвери > 2150 Тогда
    ДоскаОпорная = (ВысотаДоски * Габарит) * 14;
    ДоскаПоперечная = (ШиринаДвери + ДопШирина) * Габарит * 8;
Иначе
    ДоскаОпорная = (ВысотаДоски * Габарит) * 12;
    ДоскаПоперечная = (ШиринаДвери + ДопШирина) * Габарит * 6;
КонецЕсли;
ДоскаПродольная = (ВысотаДвери + ДопВысота) * Габарит * 6;
Результат = (ДоскаОпорная + ДоскаПоперечная + ДоскаПродольная) / 1000000000 * КоэфициентПлюса;

Показать


И да, данные из ПараметрНачало# и так далее верны, в них нет ошибок. Я новенький в 1С, так что смотрю на код, и не вижу ошибку.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. glek 120 04.10.24 07:30 Сейчас в теме
(1)
Смущает вот этот код.
ВысотаДвери = ПараметрНачало#[Размеры]#[Размер по дверной коробке мм. (ВхШ)]#[Высота]#ПараметрКонец;

И потом, о какой ошибке идет речь?
5. user2107184 04.10.24 07:36 Сейчас в теме
(4) Да и DO CASE в последний раз я помню в FoxPro...
7. G_104934483046630663621 04.10.24 07:41 Сейчас в теме
(4) Это грубо говоря ссылка на переменную. В данном случае в ответ мне придет числовое значение.
У меня просто пишет "Ошибка при расчете формулы". Я вроде все пересмотрел, и даже GPT скормил, четких ошибок он не нашел, я тоже не вижу.
Ладно, просто я впервые пишу решение через ВЫБОР..КОГДА..ТОГДА.., может в нем дело, хотя как видно на скрине, он все понимает.
Прикрепленные файлы:
8. user2033930 04.10.24 07:42 Сейчас в теме
(7)
хотя как видно на скрине, он все понимает.
Не видно. Может поближе пододвинуть?
9. G_104934483046630663621 04.10.24 07:43 Сейчас в теме
(8)
Не видно. Может поближе пододвинуть?

Не понимаю что не видно, нажмите на картинку.
11. user2033930 04.10.24 07:46 Сейчас в теме
(9) Не видно, что он понимает. Видно только буквы.
И видно, что это не 1С. А кусок кода, который потом распарсивается сторонней фигней. Т.е. (2) прав - это псевдокод.
15. G_104934483046630663621 04.10.24 07:48 Сейчас в теме
Ну могу вот так скинуть, это 1С, если конечно я уже вообще понимаю что есть 1С)
Прикрепленные файлы:
17. user2033930 04.10.24 07:50 Сейчас в теме
(15) Ну и при чём тут код 1С?
19. G_104934483046630663621 04.10.24 07:51 Сейчас в теме
(17) Ну я вроде пишу в среде 1С, вроде на языке 1С, логика мне подсказывала что это код 1С
21. user2033930 04.10.24 07:52 Сейчас в теме
(19)
логика мне подсказывала что это код 1С
Чья логика подсказывала?
22. G_104934483046630663621 04.10.24 07:54 Сейчас в теме
(21) Ну мы уже уходим от изначальной темы, я так понимаю что то, что я пытаюсь тут объяснить с истинным 1С имеет мало общего, окей, пойду еще поищу информации)
23. user1880116 04.10.24 07:56 Сейчас в теме
(22)
окей, пойду
Готовься лучше.
2. Oldsad 04.10.24 06:59 Сейчас в теме
А это точно код на 1С написан?
Больше похоже на какой-то псевдокод.
3. G_104934483046630663621 04.10.24 07:24 Сейчас в теме
(2) Ну у меня вроде всегда все работало, ну да 1С.
6. user2033930 04.10.24 07:40 Сейчас в теме
(3) Прекрасно. А теперь расскажи - в какой конфигурации, в каком типе модуля располагается данный код. Заинтриговал прям!
10. G_104934483046630663621 04.10.24 07:43 Сейчас в теме
(6) 1С:Предприятие 8.3 (8.3.16.1973)
Конфигурация : Информационная база
Вроде так, я не сильно за 1С знаю, мне сказано написать небольшой код))
12. user2033930 04.10.24 07:46 Сейчас в теме
(10) Точно. Информационная база. Как же я не догадался.
А вот про модуль и его тип ответа нет.
13. G_104934483046630663621 04.10.24 07:47 Сейчас в теме
(12) Расширения конфигурации:
- Подсистема телефонии 2.0 для 1С:УНФ (2.0.6.1)
Может это больше даст информации
16. user2033930 04.10.24 07:49 Сейчас в теме
(13) Еще больше стало. Про модуль давай отвечай.
18. G_104934483046630663621 04.10.24 07:50 Сейчас в теме
(16) Ахаха, скажите где мне узнать эту информацию и я конечно отвечу, так как я не пользователь 1С, я сторонний персонал которому сказали решить узкую проблему в среде 1С)) С 1С я знаком очень посредственно))
20. user2033930 04.10.24 07:52 Сейчас в теме
(18)
так как я не пользователь 1С, я сторонний персонал которому сказали решить узкую проблему в среде 1С)) С 1С я знаком очень посредственно))
так как я не хирург, я санитарный персонал котором сказали решить узкую проблему с аппендицитом )) С хирургией я знаком очень посредственно))
14. user1880116 04.10.24 07:47 Сейчас в теме
(3)
Ну у меня вроде всегда все работало, ну да 1С.

Никто не докажет то, что LLM говно, лучше их ярых почитателей и пользователей.
user2033930; +1 Ответить
Оставьте свое сообщение

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