Начинаю изучение программирования в 1С. Столкнулся с тем, что во всех обучающих материалах почти сразу пишут код и обьясняют, что делает код, но не обьясняют каждое слово. Вот и стопорится у меня обучение. Так что извиняюсь за свою тупость, но прошу обьяснить, как понимать код. Вот взял пример прямо из форума:
Функция ПримерИспользованияТегаНаФоруме(ПеременнаяФункции) // комментарий Если ПеременнаяФункции тогда Сообщить("Общие правила форума"); КонецЕсли; КонецФункции
Текст красного цвета мне понятен - это всякие служебные слова процедур и функций. Текст черного цвета означает дату либо текст, комментарии зеленым. Что означает текст синего цвета? Пройдусь по всему коду. 1.
ПримерИспользованияТегаНаФоруме
- это название функции? и здесь может быть любое название? 2. В скобочках это параметры функции? Может быть фунция без параметров? Если без параметров, то скобки все равно нужны? Может быть много параметров? 3. В строке
Если ПеременнаяФункции тогда
ПеременнаяФункции - это название переменной? Или параметр? 4.
Сообщить("Общие правила форума")
- я понимаю, что это отображает текст. Что такое сообщить (как называется это служебное слово) и что в скобках (я понимаю, что там текст). 5. Если ПеременнаяФункции тогда - вообще не понятно, что делает. Тут же вроде условие, а при каких условиях оно будет выполняться? Может быть это не совсем удобный код, если нужно будет, то найду другой.
У нас здесь своя атмосфера...
Группа: Основатель
Сообщений: 14020
Из: Киев
Спасибо сказали: 4577 раз
Рейтинг: 3707.3
Цитата(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. Если ПеременнаяФункции тогда - вообще не понятно, что делает. Тут же вроде условие, а при каких условиях оно будет выполняться?
Условие Если работает с чем-то, что возвращает булево значение: переменной или функцией. В ветку Если код заходит если переменная содержит значение Истина или функция возвращает значение Истина. Т.е. на примере приведенной вами функции, сообщение выведется, если функцию вызвать вот так ПримерИспользованияТегаНаФоруме(Истина)
Ага,прояснилось немного) Вот в глобальном модуле есть несколько команд, например ПриНачалеРаботыСистемы(отказ) Это функция и в ней параметр? Что значит отказ? Почему отказ?
У нас здесь своя атмосфера...
Группа: Основатель
Сообщений: 14020
Из: Киев
Спасибо сказали: 4577 раз
Рейтинг: 3707.3
Hazard @ Сегодня, 11:19 , ПриНачалеРаботыСистемы - это системная функция. Отказ - это её параметр. Вы бы почитали книжки какие-то, т.к. то, что вы спрашиваете - это самые самые азы, которые описываются практически во всех учебниках.
У нас здесь своя атмосфера...
Группа: Основатель
Сообщений: 14020
Из: Киев
Спасибо сказали: 4577 раз
Рейтинг: 3707.3
andr_andrey @ Сегодня, 14:06 , В синтакс помощнике везде описан параметр Отказ. Везде он называется так и функциональное назначение у него одинаково. В книжках так же про это написано. Можно прочитать для одной функции и сразу будет понятно в чем его смысл. Если вы считаете, что нужно что-то разъянять по нему - пожалуйста, я не против (Hazard, думаю, тоже против не будет).
Почти ветеран
Группа: Местный
Сообщений: 640
Спасибо сказали: 175 раз
Рейтинг: 140.3
Vofka @ Сегодня, 14:25 , Я про передачу аргументов по ссылке и по значению. Начинающие делают ошибку, когда изменяют переменные за пределами функций, и долго ищут "кто виноват".
#define private public enum BOOL { FALSE, TRUE, FILENOTFOUND } is made my day
Не успел прочитать) Вот сейчас посмотрел, что если установить в значение Истина, то программа не будет запущена. Я же могу закомментировать код и тоже программа не будет выполняться. А вот здесь : Процедура ПриНачалеРаботыСистемы() какие параметры передаются? В хелпе пишут - В процедуре-обработчике могут быть выполнены различные действия, необходимые при запуске программы, например, открыты некоторые формы. Как мне понять какие это действия
я понимаю, что это элементарные вопросы и на них отвечать не интересно. Но я совсем-совсем ноль в 1с. Читаю Радченко, смотрю Чистова. Вот выше привел цитату из синтакс-помощника. Понятно, что это можно найти в литературе, но я хочу знать ответ уже сейчас. Подожду, может кто-нибудь другой ответит)
Егор Динин @ 30.12.15, 0:06 , Хорошо,иду дальше учиться) Надеюсь, что когда вернусь через месяц/два логика 1с мне станет немного понятнее и я сам обьясню, что означает следующий код))) А то мне так нравится это: "В результате в модуле объекта появилась процедура ОбработкаПроведения, но внутри нее пока ничего существенного. Напишите там следующий текст, пока не вникая в его смысл:
Вот смотрю примеры кода и везде пишут значение в код. Объясню понятнее, например, нам нужно узнать,сколько осталось красных стульев на 2 складе. Ну и дальше понеслась -пишем справочник.товары,выбрать номенклатура стул,где цвет.красный и склад 2(с примера кода прошу сильно не улыбаться ). Так вот, это если пользователю захочется знать,сколько красных стульев на складе, то он должен программиста звать,чтобы тот написал ему отчет? А если ему завтра понадобится узнать, сколько черных диванов продали, то Опять код писать??
Hazard @ Сегодня, 3:08 , Hazard, примеры любого предмета обучения, кок правило далеки от реальности. А в жизни,думающий программист, даже если ему поставленна задача "сколько осталось красных стульев на 2 складе", пишет отчет "остатки на складе", где реализована возможность указать Дату остатков, Место хранения, ТМЦ или группу ТМЦ, характеристика ТМЦ и т.д.
Эта тема похожа на балкон, на который ТС выходит покурить(поделится впечатлениями) после секса(изучения программирования в 1С)
1С Предприятие 7.7: Бух. учет для Украины (активно дописанная) + самописка (учет производства и ЗП) 1С Предприятие 8.3: Бух.предприятия 3.0 + самописка ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Кроме высшего образования, нужно иметь хотя бы среднее соображение
Почти крутой
Группа: Местный
Сообщений: 1454
Из: Киев
Спасибо сказали: 549 раз
Рейтинг: 0
Цитата(Hazard @ 13.01.16, 3:08)
Так вот, это если пользователю захочется знать,сколько красных стульев на складе, то он должен программиста звать,чтобы тот написал ему отчет? А если ему завтра понадобится узнать, сколько черных диванов продали, то Опять код писать??
Вам нужно ознакомится с логикой работы реального приложения 1С, хотя бы простенькой торговли. В пользовательском режиме.
Крутой
Группа: Местный
Сообщений: 1994
Из: Киева и окрестностей
Спасибо сказали: 406 раз
Рейтинг: 0
Цитата(Hazard @ 13.01.16, 3:08)
Так вот, это если пользователю захочется знать,сколько красных стульев на складе, то он должен программиста звать,чтобы тот написал ему отчет?
Да. Фишка в том, чтобы пользователь позвал того же программиста Как-то предлагали задание: вписать в код зарплатной конфигурации реквизиты банковских счетов, с которых перечисляется зп сотрудникам подразделений. Но скорее всего - дилетант развлекался.
Так,немного уложилось в голове. Я только не понимаю, как можно запомнить все встроенные процедуры? Паскаль как-то проще в этом плане.. Или мне не все о нем рассказали..)
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!