Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вопросы начинающего программиста
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Вся 1С
Hazard
Начинаю изучение программирования в 1С. Столкнулся с тем, что во всех обучающих материалах почти сразу пишут код и обьясняют, что делает код, но не обьясняют каждое слово. Вот и стопорится у меня обучение. Так что извиняюсь за свою тупость, но прошу обьяснить, как понимать код.
Вот взял пример прямо из форума:
Функция ПримерИспользованияТегаНаФоруме(ПеременнаяФункции)
// комментарий
Если ПеременнаяФункции тогда
Сообщить("Общие правила форума");
КонецЕсли;
КонецФункции

Текст красного цвета мне понятен - это всякие служебные слова процедур и функций.
Текст черного цвета означает дату либо текст, комментарии зеленым.
Что означает текст синего цвета?
Пройдусь по всему коду.
1.
ПримерИспользованияТегаНаФоруме
- это название функции? и здесь может быть любое название?
2. В скобочках это параметры функции? Может быть фунция без параметров? Если без параметров, то скобки все равно нужны? Может быть много параметров?
3. В строке
Если ПеременнаяФункции тогда
ПеременнаяФункции - это название переменной? Или параметр?
4.
Сообщить("Общие правила форума")
- я понимаю, что это отображает текст. Что такое сообщить (как называется это служебное слово) и что в скобках (я понимаю, что там текст).
5. Если ПеременнаяФункции тогда - вообще не понятно, что делает. Тут же вроде условие, а при каких условиях оно будет выполняться?
Может быть это не совсем удобный код, если нужно будет, то найду другой.
Vofka
Цитата(Hazard @ 27.12.15, 0:58) необходимо зарегистрироваться для просмотра ссылки
- это название функции? и здесь может быть любое название?

Да, да.

Цитата(Hazard @ 27.12.15, 0:58) необходимо зарегистрироваться для просмотра ссылки
2. В скобочках это параметры функции? Может быть фунция без параметров? Если без параметров, то скобки все равно нужны? Может быть много параметров?

На все вопросы Да.

Цитата(Hazard @ 27.12.15, 0:58) необходимо зарегистрироваться для просмотра ссылки
ПеременнаяФункции - это название переменной? Или параметр?

Параметр функции это и есть переменная в теле функции.

Цитата(Hazard @ 27.12.15, 0:58) необходимо зарегистрироваться для просмотра ссылки
Что такое сообщить (как называется это служебное слово) и что в скобках (я понимаю, что там текст).

Сообщить - это функция. То, что ей передается в скобках - параметры этой функции.
Цитата(Hazard @ 27.12.15, 0:58) необходимо зарегистрироваться для просмотра ссылки
5. Если ПеременнаяФункции тогда - вообще не понятно, что делает. Тут же вроде условие, а при каких условиях оно будет выполняться?

Условие Если работает с чем-то, что возвращает булево значение: переменной или функцией. В ветку Если код заходит если переменная содержит значение Истина или функция возвращает значение Истина. Т.е. на примере приведенной вами функции, сообщение выведется, если функцию вызвать вот так ПримерИспользованияТегаНаФоруме(Истина)
Hazard
Ага,прояснилось немного)
Вот в глобальном модуле есть несколько команд, например
ПриНачалеРаботыСистемы(отказ)
Это функция и в ней параметр? Что значит отказ? Почему отказ?
Vofka
Hazard @ Сегодня, 11:19 необходимо зарегистрироваться для просмотра ссылки,
ПриНачалеРаботыСистемы - это системная функция. Отказ - это её параметр. Вы бы почитали книжки какие-то, т.к. то, что вы спрашиваете - это самые самые азы, которые описываются практически во всех учебниках.
andr_andrey
Vofka @ Сегодня, 11:37 необходимо зарегистрироваться для просмотра ссылки,
Про передачу параметра по ссылке, на примере "Отказ", надо сразу хорошее объяснение искать.
Vofka
andr_andrey @ Сегодня, 14:06 необходимо зарегистрироваться для просмотра ссылки,
В синтакс помощнике везде описан параметр Отказ. Везде он называется так и функциональное назначение у него одинаково. В книжках так же про это написано. Можно прочитать для одной функции и сразу будет понятно в чем его смысл. Если вы считаете, что нужно что-то разъянять по нему - пожалуйста, я не против (Hazard, думаю, тоже против не будет).
andr_andrey
Vofka @ Сегодня, 14:25 необходимо зарегистрироваться для просмотра ссылки,
Я про передачу аргументов по ссылке и по значению. Начинающие делают ошибку, когда изменяют переменные за пределами функций, и долго ищут "кто виноват".
Hazard
Цитата(Vofka @ 28.12.15, 11:37) необходимо зарегистрироваться для просмотра ссылки
Вы бы почитали книжки какие-то

Не успел прочитать) Вот сейчас посмотрел, что если установить в значение Истина, то программа не будет запущена. Я же могу закомментировать код и тоже программа не будет выполняться.
А вот здесь :
Процедура ПриНачалеРаботыСистемы() какие параметры передаются? В хелпе пишут - В процедуре-обработчике могут быть выполнены различные действия, необходимые при запуске программы, например, открыты некоторые формы.
Как мне понять какие это действия
Vofka
Hazard, уже становится не интересно smile.gif . Почитайте литературку какую-то в самом деле.
Hazard
я понимаю, что это элементарные вопросы и на них отвечать не интересно. Но я совсем-совсем ноль в 1с. Читаю Радченко, смотрю Чистова. Вот выше привел цитату из синтакс-помощника. Понятно, что это можно найти в литературе, но я хочу знать ответ уже сейчас.
Подожду, может кто-нибудь другой ответит)
Егор Динин
Цитата(Hazard @ 29.12.15, 22:31) необходимо зарегистрироваться для просмотра ссылки
но я хочу знать ответ уже сейчас.

Наоборот, так будет очень-очень долго. Сначала Ваши старания, потом наши ответы.
Hazard
Егор Динин @ 30.12.15, 0:06 необходимо зарегистрироваться для просмотра ссылки,
Хорошо,иду дальше учиться) Надеюсь, что когда вернусь через месяц/два логика 1с мне станет немного понятнее и я сам обьясню, что означает следующий код))) А то мне так нравится это:
"В результате в модуле объекта появилась процедура ОбработкаПроведения, но внутри нее пока ничего существенного. Напишите там следующий текст, пока не вникая в его смысл:
СпрСотр = Справочники.Сотрудники.СоздатьЭлемент();
СпрСотр.Наименование = ФИО;
СпрСотр.Должность = Должность;
СпрСотр.Оклад = Оклад;
СпрСотр.ДатаПриема = ДатаПриема;
СпрСотр.Записать();"

Егор Динин
Hazard,
Накачайте себе видеоуроков, так проще, понятнее и быстрее.
Hazard
Вот смотрю примеры кода и везде пишут значение в код. Объясню понятнее, например, нам нужно узнать,сколько осталось красных стульев на 2 складе. Ну и дальше понеслась -пишем справочник.товары,выбрать номенклатура стул,где цвет.красный и склад 2(с примера кода прошу сильно не улыбаться wink.gif). Так вот, это если пользователю захочется знать,сколько красных стульев на складе, то он должен программиста звать,чтобы тот написал ему отчет? А если ему завтра понадобится узнать, сколько черных диванов продали, то Опять код писать??
nysysimara
Hazard @ Сегодня, 3:08 необходимо зарегистрироваться для просмотра ссылки,
Hazard, примеры любого предмета обучения, кок правило далеки от реальности.
А в жизни,думающий программист, даже если ему поставленна задача "сколько осталось красных стульев на 2 складе",
пишет отчет "остатки на складе", где реализована возможность указать Дату остатков, Место хранения, ТМЦ или группу ТМЦ, характеристика ТМЦ и т.д.

Эта тема похожа на балкон, на который ТС выходит покурить(поделится впечатлениями) после секса(изучения программирования в 1С) smile.gif

Егор Динин
Цитата(Hazard @ 13.01.16, 3:08) необходимо зарегистрироваться для просмотра ссылки
Так вот, это если пользователю захочется знать,сколько красных стульев на складе, то он должен программиста звать,чтобы тот написал ему отчет? А если ему завтра понадобится узнать, сколько черных диванов продали, то Опять код писать??

Вам нужно ознакомится с логикой работы реального приложения 1С, хотя бы простенькой торговли. В пользовательском режиме.
Hazard
Цитата(nysysimara @ 13.01.16, 7:24) необходимо зарегистрироваться для просмотра ссылки
пишет отчет "остатки на складе", где реализована возможность указать Дату остатков, Место хранения,

Вот именно это я и хотел узнать можно (и нужно) ли так делать!
Цитата(nysysimara @ 13.01.16, 7:24) необходимо зарегистрироваться для просмотра ссылки
Эта тема похожа на балкон, на который ТС выходит покурить(поделится впечатлениями) после секса(изучения программирования в 1С) smile.gif

Ахах, в точку)) реалити шоу 38000000.gif
Zaval
Цитата(Hazard @ 13.01.16, 3:08) необходимо зарегистрироваться для просмотра ссылки
Так вот, это если пользователю захочется знать,сколько красных стульев на складе, то он должен программиста звать,чтобы тот написал ему отчет?

Да. Фишка в том, чтобы пользователь позвал того же программиста smile.gif
Как-то предлагали задание: вписать в код зарплатной конфигурации реквизиты банковских счетов, с которых перечисляется зп сотрудникам подразделений.
Но скорее всего - дилетант развлекался.

Hazard
Так,немного уложилось в голове. Я только не понимаю, как можно запомнить все встроенные процедуры? Паскаль как-то проще в этом плане.. Или мне не все о нем рассказали..)
DartRomanius
Hazard @ Сегодня, 2:50 необходимо зарегистрироваться для просмотра ссылки,

А их (процедур встроенных), не так уж и много.
Практика помогает. smile.gif
Мичман Харитонов
У меня тоже созрел "чайниковый" вопрос 44000000.gif
Планирую перенос зарплатного и кадрового учета (ЗиК, очень сильно самописный) на восьмерку.
Что лучше взять - отдельную конфигурацию "ЗУП", либо можно без особых проблем вести учет в "Бухгалтерии" или УТП?
Там зарплатный модуль такой же, либо функционал в чем-то урезан?
Vofka
Пришло время закрыть тему. Ребята, новый вопрос - новая тема.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.