|
примитивненько про модуль:((((( | ☑ | ||
---|---|---|---|---|
0
Хома
24.08.04
✎
10:04
|
Кто нибудь помогите с модулями....объясните как пятилетнему ребёнку на каком нить самом пустяшном примере .Вот например примитивная программа VBA:
ASRT Dim x Dim y x=1 y=InputBox("задайте значение y") Dim z z=x+y MsgBox "результат:" & z End . . . что можно перевести как: Обьявляю переменную х обьявляю переменную у х=1 у= запрос у пользователя парамера у ("задайте значение у") объявляю переменную z z=х+у вывод на экран значения z конец процедуры. а вот может кто нибудь разжевать таким же образом какой нибудь пусть самый примитивный пример из 1с |
|||
1
Волшебник
24.08.04
✎
10:07
|
Перем x;
Перем y; Процедура Прога() Перем z; x=1; ВвестиЧисло(y,"задайте значение y"); z=x+y; Предупреждение("результат:" + z); КонецПроцедуры Эту процедуру нужно вызвать по кнопке из формы, т.е. в формуле кнопки прописать Прога(). |
|||
2
Guk
24.08.04
✎
10:09
|
х=1;
у=0; z=0; Если ВвестиЧисло(у,"задайте значение у",10,0)=1 Тогда z=х+у; КонецЕсли; |
|||
3
Хома
24.08.04
✎
10:36
|
Волшебнику
я правильно понимаю: 1) мы объявляем 2 переменные до начала процедуры 2) затем уже в блоке процедуры объявляем третью (z) 3)присваиваем переменнной х значение единица; 4) запаршиваем у пользователя значение переменной у 5) собственно производим расчёт 6)оператором "Предупреждение" выводим на экран сообщение 7) заканчиваем процедуру правильно? |
|||
4
Хома
24.08.04
✎
10:39
|
Gukу
правильно ли я понимаю: мы неявно объявили три переменных присвоив им значения 1, 0, 0 затем запрашиваем у пользователя значения переменной у от 10 до 0.... если это условие выполняеться будет проведено собственно сложение так? |
|||
5
Хома
24.08.04
✎
10:41
|
а такой вопрос есть гден нибудь справочники ли свод операторов ?
|
|||
6
Волшебник
24.08.04
✎
10:42
|
(3)
По пункту 1 Эти переменные объявляются в начале модуля до начала всех процедур. Поэтому они являются переменными модуля. А переменная z является переменной внутри процедуры, она не видна в других процедурах. Переменные в большинстве случаев можно не объявлять, первое присваивание создает переменную. Но иногда объявление переменной обязательно, например, если нужна глобальная переменная (в модуле приложения) или переменная уровня модуля, или когда переменная в процедуре должна "закрыть" собой глобальную переменную. Предупреждение() - не оператор, а системная процедура встроенного языка. Есть еще Сообщить() - выводит текст в окно сообщений (внизу которое). |
|||
7
Волшебник
24.08.04
✎
10:42
|
(5) в Синтакс-помощнике.
См. также www.mista.ru/tutor_1c |
|||
8
Хома
24.08.04
✎
11:04
|
угум а вот это я правильно понимаю:
Процедура Обработкапроведения() СпрСотр.Новый(); СпрСотр. Наименование = ФИО; СпрСотр.Должность=Должность; СпрСотр.ДатаПриёма=ДатаПриёма; СпрСотр. Записать(); Конец Процедуры ..... в переводе название процедуры обращаемся к справочнику сотрудников создаём новый эелемент в справочнике сотрудников присваиваем Наименование (из справочника) значение хранящееся в ФИО (документа) присваиваем Должность (из справочника) значение хранящееся в Должность (документа) присваиваем ДатаПриёма (справочника) значение хранящееся в ДатаПриёма (документа) сохраняю новый эелемент в справочнике конец процедуры . . . это так? |
|||
9
Волшебник
24.08.04
✎
11:08
|
не забудь:
СпрСотр = СоздатьОбъект("Справочник.Сотрудники"); |
|||
10
Хома
24.08.04
✎
11:16
|
ага
СоздатьОбъект("Справочник. Сотрудники") - это и будет обращение к справочнику? |
|||
11
Волшебник
24.08.04
✎
11:19
|
||||
12
Хома
24.08.04
✎
11:26
|
у меня учебник есть...скаченный и распечатанный......эх у мя их если честно многа, толку тока мало пока:(((((
Просто почему то все пособия по 1с както не похожи на обчные справочники по програмированию...и опять же ж там всё как то проще:((((( |
|||
13
Хома
24.08.04
✎
11:28
|
и ещё такой вопрос......(можете что угодно думать о моих умственных способностях)
вот на mista.ru/tutor_1c/lang_syntax.htm Процедура РасчитатьНалог(Сотрудник,НекаяДата) КонецПроцедуры ..... а как это расшифровать то?:((((( |
|||
14
Asmody
24.08.04
✎
11:38
|
эт чего развод? >;))
(13) объявление процедуры это. если перевести на тот же VBA, то будет Sub RecalcTax(Empl, SomeDate) ... EndSub так кажись... |
|||
15
GrayT
24.08.04
✎
11:39
|
А это объявление процедуры, которую потом можно будет вызывать из разных мест (попрошу не юродствовать :))
(0)А можно спросить о стаже программирования на том же VBA? |
|||
16
Хома
24.08.04
✎
11:43
|
то есть Расчитать Налог - процедура.....
а Сотрудник, НекаяДата - это что? |
|||
17
YamMike
24.08.04
✎
11:48
|
(16) Ты чо, а? Это параметры, которые ты передаешь в процедуру. См. (14)
|
|||
18
Хома
24.08.04
✎
11:56
|
ну объясните мне как оно работает:(((((((((((( ну мож на примере на каком........не понимаю я
Процедура РасчитатьНалог(Сотрудник,НекаяДата) КонецПроцедуры |
|||
19
Волшебник
24.08.04
✎
11:58
|
Тяжелый случай...
Нужно срочно купить книгу "Программирование для школьников". Там на примере игрушечного танка рассказывается понятие "алгоритм", "переменная", "команда", "процедура", "функция". |
|||
20
Asmody
24.08.04
✎
12:00
|
Процедура РасчитатьНалог(Сотрудник,НекаяДата)
... КонецПроцедуры можно так: СпрСотр=СоздатьОбъект("Справочник.Сотрудники"); Сотр=СпрСотр.НайтиПоНаименованию("Иванов"); РасчитатьНалог(Сотр,РабочаяДата()); |
|||
21
GrayT
24.08.04
✎
12:01
|
Ты не ответил на наши вопросы в 14 и 15.
Процедура ПосчитатьСуму(Парам1, Парам2) Сообщить(Парам1+Парам2); КонецПроцедуры; Дальше по ходу ПосчитатьСуму(1,2); ............. ............. ПосчитатьСуму(5,7) Достаточно примитивно? |
|||
22
Asmody
24.08.04
✎
12:03
|
(19)+ не поможет. есть классная книга "Компьютер в детском саду". Вот это то, что нужно. >;))
|
|||
23
Хома
24.08.04
✎
12:04
|
Волшебник, хи...оа у мя есть.......кстати очень харошая книжка, многие профессионалы советуют начинающим именно детские книжки..ни где так понятно не обрисовано как там.
а потом проблемма у меня в том что я ни как не могу осознать 1с собственно как язык.....а во всех книгах на всех сайта...представление 1с очень схоже.... мне нужна не книга "Программирование для школьников", а что нить в духе "Детям про 1с"....... а по делу, объяснить можешь? |
|||
24
Волшебник
24.08.04
✎
12:08
|
(23) попробуй это:
www.firststeps.ru/1c |
|||
25
Хома
24.08.04
✎
12:10
|
Asmody
обращение к справочнику сотрудники выбор элемента справочника выполняем для элемента расчет на по конкретной дете так? |
|||
26
Asmody
24.08.04
✎
12:14
|
(25) именно. только не _выбор_ а _поиск_ элемента справочника по наименованию.
|
|||
27
Хома
24.08.04
✎
12:15
|
GrayТ отвечаю:
это не развод стажа нет - я работаю не програмистом, а инженером угум так: Процедура по параметрам 1и 2 запрашиваем у пользователя параметр 1 и 2 конец процедуры ...это верно? тыкс....а по ходу: ммируем параметр 1 и 2 5,7????? |
|||
28
Волшебник
24.08.04
✎
12:15
|
Asmody уже привык к 8.0 и пишет по-новому.
Для 7.7 нужно так: Если СпрСотр.НайтиПоНаименованию("Иванов")=1 Тогда РасчитатьНалог(СпрСотр.ТекущийЭлемент(),РабочаяДата()); КонецЕсли; "расчет" "рассчитать" |
|||
29
Хома
24.08.04
✎
12:17
|
Asmody
угу кажись понимаю.....спасиба |
|||
30
Хома
24.08.04
✎
12:21
|
Волшебник
если в справочнике найден Иванов, надо расчитать доя него налог на текущую дату так? "расчет" и "рассчитать"? |
|||
31
Волшебник
24.08.04
✎
12:26
|
(30) Я понял твою проблему: ты все конструкции программирования переводишь на русский язык, а нужно их воспринимать как они есть, без перевода. Это аналогично простому пониманию иностранного языка по сравнению с переводом на родной язык и последующим пониманием.
Забудь про русский, пиши и думай на языке 1С. А теперь по твоим вопросам: 1. не на текущую, а на рабочую (это разные понятия) 2. простая правка орфографии. "Расчет" пишется с одной "с", а "рассчитать" с двумя. К тебе, кстати, это тоже относится. |
|||
32
Хома
24.08.04
✎
13:54
|
угум попробую терь разобраться .......
всем спасибо. |
Форум | Правила | Описание | Реклама | Секции | Поиск | Книга знаний | Вики-миста |