Главная » Файлы » Уроки "1С ОТ а ДО Я" » Уроки "1С ОТ а ДО Я" |
Скачивать материалы с сайта, могут только зарегистрированные пользователи.
Для регистрации заполните два поля ниже!
Через минуту Вы получите "Гостевой доступ"
Урок третий ( Раздел №1) “Типы Данных”
2012 Декабрь 15, 14:50 | |
Урок третий ( Раздел №1) "Типы Данных”
В этом уроке мы продолжим знакомиться с функциями и процедурами,
Узнаем что такое Типы Данных в 1С. а также научимся программно читать, записывать, удалять и редактировать содержимое справочников. В прошлом уроке мы закончили на функции что выводит данные. Я рассказывал об операциях сложения. Давайте немножко разберемся что такое Типы Данных . Типы данных в 1с как и в других языках программирования бывают следующих типов : Примитивный тип данных он же «Булевой» Истина или Ложь , Строковый тип данных «Строка» Числовой тип данных «Число» С остальными типами, познакомимся в процессе обучения. Пример «Булевой» тип: ----------------------------------------------------------------------------------------------------- а = 10; Если а <> 10 Тогда а = Ложь; КонецЕсли; ---------------------------------------------------------------------------------- В данном условии
мы присвоили значение «Ложь»
переменной «а»
Кстати оператор <> значит
неравенство. Можно еще сравнить это либо «да» либо «нет» 0 или 1 Используют : В основном когда хотят указать флаг какому то значению, и лучше всего для этого подходит такой вот тип данных ! Строковой тип данных, этот тип данных мы назначаем например при выводе Сообщить ("Привет Мир"); Заключая в скобки "Привет Мир" мы как бы даем понять ес-ке что что это Тип "строка". -----------------------------------------------------------------------------
Функция ОбчислитьЗнач3();
Возврат(""+Стр
+ С);
В данном случаи
используя вначале "" мы искусственно устанавливаем
строковый тип данных
чтоб выполнить операцию сложения с последующим выводом результата в окно сообщений !Стр = "Результат функции:"; А = 150; Число = (А/100*20); Б = 2; С = Число - Б; Возврат(""+Стр + С); КонецФункции ---------------------------------------------------------------------------------------------------------- Параметры в процедурах и функциях … Для любого параметра процедуры или функции допустимо указание значения «по умолчанию». Это указание производится при определении процедуры или функции. При этом после имени переменной ставится знак «=» и значение, которое будет использоваться «по умолчанию». Значение «по умолчанию» используется в том случае, если параметр был по каким-то причинам опущен. Пропуск параметров может быть произведен двумя методами: Вместо параметра указывается запятая. Например: --------------------------------------------------------------- Функция Сложение
(X
= 1, Y
= 2, Z
= 5)
Возврат X+ Y + Z;
КонецФункции -------------------------------------------------------------------------------- Процедура КнопкаВыполнитьНажатие(Кнопка) Сообщить ("" + Сложение
(6,,4)); Как видите все почти так же !КонецПроцедуры ----------------------------------------------------------------------------------- В результате будет выведено: «12». Тут мы опустили параметр «Y» и в качестве его значения было использовано значение «по умолчанию», т.е. — 2. Параметр просто не указывается. Например: -------------------------------------------------------------------------------- Функция Сложение (X = 1, Y = 2, Z = 5) Возврат X + Y + Z; КонецФункции ------------------------------------------------------------------------------- Процедура КнопкаВыполнитьНажатие(Кнопка) Сообщить ("" + Сложение (6,5)); КонецПроцедуры ------------------------------------------------------------------------------ В результате будет выведено: «16». Тут мы опустили параметр «Z» и в качестве его значения было использовано значение «по умолчанию» — 5. Такой способ пропуска параметров возможен только для тех параметров, которые следуют в определении процедуры или функции последними. Как программно: Прочитать, Записать, Удалить, или Отредактировать запись справочнике ! И так мы с вами предварительно уже создали справочник «Сотрудники» Теперь давайте попробуем в него что то записать, но на этот раз сделать это программно ! Давайте Запишем в нашу процедурку КнопкаВыполнитьНажатие(Кнопка) следующий код ! Запись в справочник...... -------------------------------------------------------------- Процедура КнопкаВыполнитьНажатие(Кнопка) НовыйЭлемент = Справочники.Сотрудники.СоздатьЭлемент(); НовыйЭлемент.Наименование = "Иванов П.П"; НовыйЭлемент.Записать(); КонецПроцедуры ----------------------------------------------------------------------- Что мы проделали ! 1.Сперва Создали Элемент ! 2.Присвоили Значение "Иванов П.П"; 3.Затем записали Его ! Поздравляю ! Можете запустить Ес-ку и посмотреть результат ! Кстати если вы заметили, то код читается как бы справа на лева ! СоздатьЭлемент(); - Находится справа а с лева уже переменная НовыйЭлемент которой мы присваиваем значение ! Чтение из справочника ..... Так давайте попробуем прочитать, получить все записи из нашего справочника. «Сотрудники» Напишем в нашей процедуре следующий код ! --------------------------------------------------------------------- Процедура КнопкаВыполнитьНажатие(Кнопка) Спр = Справочники.Сотрудники.Выбрать(); Пока Спр.Следующий() Цикл НаименованиеСотрудника = Спр.Наименование; Сообщить(НаименованиеСотрудника); КонецЦикла; КонецПроцедуры ------------------------------------------------------------------------- Вот таким способом мы получаем все Наименования из нашего справочника ! Сделали мы это при помощи циклов , (В следующим уроке , когда мы будем их рассматривать, я все детально распишу ) Как программно заменить или отредактировать запись ( Элемент ) в справочнике ? Напишем вот такую процедуру ... ---------------------------------------------------------------------------------------- Процедура КнопкаВыполнитьНажатие(Кнопка) Сотр = Справочники.Сотрудники.НайтиПоКоду("000000001"); // 1 Объект = Сотр.ПолучитьОбъект(); // 2 Объект.Наименование = "Иванов П.С"; // 3 Объект.Записать(); // 4 КонецПроцедуры ------------------------------------------------------------------------------------------ Так, расшифрую что мы написали. Сперва мы Должны найти запись которую хотим отредактировать , делаем мы это поиском по коду Элемента ( строка 1 ), затем Получаем «Объект» Элемента (строка 2), Устанавливаемым новое значение (строка 3) и записываем ! ВСЕ ! Запись успешно отредактирована , сохраняем , проверяем результат ! Как удалить Запись ( Элемент ) из Справочника ? ------------------------------------------------------------ Процедура КнопкаВыполнитьНажатие(Кнопка) Сотр = Справочники.Сотрудники.НайтиПоКоду("000000001"); //1 Объект = Сотр.ПолучитьОбъект(); // 2 Объект.Удалить(); // 3 КонецПроцедуры ------------------------------------------------------------------------------------------------------- То есть нашли , получили Объект, затем его удалили ! Кстати «в жизни» крайне не рекомендуется такое проделывать , потому что можно нарушить ссылочною целостность. Например: Вы приняли сотрудника на работу в 2011 г затем уволили его 2012 потом вы удалили элемент из справочника «Сотрудники» а вместе с этим Элементом и Объект канул в небытие :) А пустая ссылка на этот Объект (Который уже не существует в нашей базе) Остается в документах Приема и Увольнения! И в них вместо имени сотрудника останется вот такая фигня :) ("Ссылка" на бывшего сотрудника) ---------------------------------------------------------------- <Объект не найден> (84:bf5600145e3710ab11dda4c605dbe824). - ---------------------------------------------------------------- Если у вас будет резервная копия базы, то из этой записи можно создать УникальныйИдентификатор (GUID) и восстановить запись, на практике мы с вами такое проделаем ! :) О справочниках можно и нужно еще рассказать, так как это еще далеко не все, собственно что я и сделаю в следующем уроке. Вы пока потренируйтесь ! В следующем уроке... 1. Работа со справочниками (продолжаем !) 2. Циклы в 1С ! | |
Просмотров: 1869 | Загрузок: 0 | Комментарии: 1 | |
Выразить благодарность - Поделиться с друзьями!
Всего комментариев: 1 | |
| |