Главная » Файлы » Уроки "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С !

Категория: Уроки "1С ОТ а ДО Я" | Добавил: c1
Просмотров: 1869 | Загрузок: 0 | Комментарии: 1 | Рейтинг: 5.0/1

Выразить благодарность - Поделиться с друзьями!

 

Здесь все о технической стороне 1С!

 

Узнай, как правильно администрировать 1С Предприятие
Регистрируйся на бесплатный 7-ми дневный курс сейчас:

Ваш E-Mail в безопасности



Всего комментариев: 1
avatar
1
Да, отличный урок с нетерпением уже жду второго !!!
avatar