Вход | Регистрация


1С:Предприятие ::

Метки:

примитивненько про модуль:(((((

Я
   Хома
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); 

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

Эту процедуру нужно вызвать по кнопке из формы, т.е. в формуле кнопки прописать Прога().
   Guk
 
2 - 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
Да. Только лишние пробелы убери.

Иди сюда: www.mista.ru/tutor_1c
   Хома
12 - 24.08.04 - 11:26
у меня учебник есть...скаченный и распечатанный......эх у мя их если честно многа, толку тока мало пока:(((((
Просто почему то все пособия по 1с както не похожи на обчные справочники по програмированию...и опять же ж там всё как то проще:(((((
   Хома
13 - 24.08.04 - 11:28
и ещё такой вопрос......(можете что угодно думать о моих умственных способностях)
вот на mista.ru/tutor_1c/lang_syntax.htm
Процедура
РасчитатьНалог(Сотрудник,НекаяДата)

КонецПроцедуры
.....
а как это расшифровать то?:(((((
   Asmody
 
14 - 24.08.04 - 11:38
эт чего развод? >;))

(13) объявление процедуры это.
если перевести на тот же VBA, то будет

Sub RecalcTax(Empl, SomeDate)
...
EndSub

так кажись...
   GrayT
 
15 - 24.08.04 - 11:39
А это объявление процедуры, которую потом можно будет вызывать из разных мест (попрошу не юродствовать :))
(0)А можно спросить о стаже программирования на том же VBA?
   Хома
16 - 24.08.04 - 11:43
то есть Расчитать Налог - процедура.....
а Сотрудник, НекаяДата - это что?
   YamMike
 
17 - 24.08.04 - 11:48
(16) Ты чо, а? Это параметры, которые ты передаешь в процедуру. См. (14)
   Хома
18 - 24.08.04 - 11:56
ну объясните мне как оно работает:(((((((((((( ну мож на примере на каком........не понимаю я
Процедура
РасчитатьНалог(Сотрудник,НекаяДата)
КонецПроцедуры
   Волшебник
 
19 - 24.08.04 - 11:58
Тяжелый случай...

Нужно срочно купить книгу "Программирование для школьников". Там на примере игрушечного танка рассказывается понятие "алгоритм", "переменная", "команда", "процедура", "функция".
   Asmody
 
20 - 24.08.04 - 12:00
Процедура РасчитатьНалог(Сотрудник,НекаяДата) 
  ...
КонецПроцедуры

можно так:

СпрСотр=СоздатьОбъект("Справочник.Сотрудники");
Сотр=СпрСотр.НайтиПоНаименованию("Иванов");
РасчитатьНалог(Сотр,РабочаяДата());
   GrayT
 
21 - 24.08.04 - 12:01
Ты не ответил на наши вопросы в 14 и 15.
Процедура ПосчитатьСуму(Парам1, Парам2)
 Сообщить(Парам1+Парам2);
КонецПроцедуры;

Дальше по ходу
ПосчитатьСуму(1,2);
.............
.............
ПосчитатьСуму(5,7)
Достаточно примитивно?
   Asmody
 
22 - 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
обращение к справочнику сотрудники
выбор элемента справочника
выполняем для элемента расчет на по конкретной дете
так?
   Asmody
 
26 - 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
угум попробую терь разобраться .......
всем спасибо.



Список тем форума
Рекламное место пустует   Рекламное место пустует
Ошибка? Это не ошибка, это системная функция.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует