Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
17 Дек 2017, 18:58
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Вопросы инкапсуляции  (Прочитано 3867 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн hackoff

  • *
  • Сообщений: 21
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-08-17
  • Сайт: 
  • Профессия: Ученик 1С
Здравствуйте уважаемые. Столкнулся с небольшими сложностями при написании кода.
1. Как вызывать функцию из модуля документа, написанную в модуле формы (как она должна быть описана)?
2. Как обратиться к элементу формы из модуля документа (К полям которые "реквизиты" получается)?
Спасибо за внимание :)


Оффлайн ОльгаН

  • **
  • Сообщений: 90
  • РЕПУТАЦИЯ: 14
  • КПД: 16%
  • Регистрация: 2011-07-11
  • Сайт: 
  • Профессия: Ученик 1С
Я тоже ученик, но думаю так:
1. Описать функцию в ГлобальномМодуле, в этом случае она "видна" всюду. Или скопировать описание функции и в модуль документа тоже.
2. Если форма того же документа, то в чем проблема?

Оффлайн hackoff

  • *
  • Сообщений: 21
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-08-17
  • Сайт: 
  • Профессия: Ученик 1С
Проблемы в том что я слишком долго писал на с++/Qt и бред про чистоту кода не могу выбить из своей тупой головы:)
Еще один вопрос возник. Есть ли статические локальные переменные?

Оффлайн ОльгаН

  • **
  • Сообщений: 90
  • РЕПУТАЦИЯ: 14
  • КПД: 16%
  • Регистрация: 2011-07-11
  • Сайт: 
  • Профессия: Ученик 1С
Что такое "статические локальные переменные"? Для чего нужны?

Оффлайн sergejK74

  • *****
  • Сообщений: 1093
  • РЕПУТАЦИЯ: 458
  • КПД: 42%
  • Всегда готов помочь!
  • Регистрация: 2011-07-08
  • Сайт: 
  • Профессия: Ученик 1С
Есть ли статические локальные переменные?
Нет.
Кнопочка Спасибо - слева!

Оффлайн hackoff

  • *
  • Сообщений: 21
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-08-17
  • Сайт: 
  • Профессия: Ученик 1С
По вопросу 1 и 2 кто может подсказать?

Оффлайн hackoff

  • *
  • Сообщений: 21
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-08-17
  • Сайт: 
  • Профессия: Ученик 1С
В документации описано то, что из модуле документа доступен только глобальный контекст и контекст с реквизитами текущего документа. И еще я так понял что в форме документа нельзя создавать глобальные функции, в документации написано "не имеет смысла" ( со словом экспорт), что это можно только в глобальном модуле.
Следовательно:
из модуля документа нельзя обратиться к элементам формы, глобальным переменным, не являющимися "реквизитами"
из модуля документа нельзя вызвать функцию/процедуру находящеюся в модуле формы документа

Товарищи! Где я не прав? Во мне медленно и верно погибает желание изучать 1с :(. Может есть литература "похожая" на Бьерна Страуструпа и Герберта Шилда?

Оффлайн sergejK74

  • *****
  • Сообщений: 1093
  • РЕПУТАЦИЯ: 458
  • КПД: 42%
  • Всегда готов помочь!
  • Регистрация: 2011-07-08
  • Сайт: 
  • Профессия: Ученик 1С
Следовательно:
из модуля документа нельзя обратиться к элементам формы, глобальным переменным, не являющимися "реквизитами"
Это ограничение вызвано логикой работы системы 1С. Представь, что у тебя есть какой-то реквизит на форме (не являющийся "реквизитом"). И логика проведения документа зависит от его значения. Если документ записать и закрыть, то значение реквизита будет неопределено. При повторном перепроведении документа (допустим при групповом перепроведении) невозможно получить значение реквизита формы и использовать его в алгоритме обработки проведения.
из модуля документа нельзя вызвать функцию/процедуру находящеюся в модуле формы документа
Логика здесь та же. Для уменьшения количества ошибок связанных с использованием разного рода реквизитов, которые не сохранены в базе, при обработке проведения. В 8.х этот недостаток устранен, там есть модуль объекта. Общие функции можно вынести туда.
Товарищи! Где я не прав? Во мне медленно и верно погибает желание изучать 1с :(. Может есть литература "похожая" на Бьерна Страуструпа и Герберта Шилда?
По 7.7 литературы очень мало, всю ее наверно можно найти в разделе ПОЛЕЗНЫЕ ССЫЛКИ для скачивания.
Кнопочка Спасибо - слева!

Оффлайн hackoff

  • *
  • Сообщений: 21
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-08-17
  • Сайт: 
  • Профессия: Ученик 1С
Спасибо всем! Информацией удовлетворен:) надеюсь когда нибудь сам достигну уровня, на котором смогу помогать по вопросам 1с:)
Тему можно закрыть:)


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
145 Сообщений
ilyay ilyay
63 Сообщений
AIFrame
63 Сообщений
alex0402
50 Сообщений
andron81_81
44 Сообщений
oleg-x
42 Сообщений
BuhRust
32 Сообщений
MuI_I_Ika MuI_I_Ika
31 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
24 Сообщений

* Кто онлайн

  • Точка Гостей: 271
  • Точка Скрытых: 0
  • Точка Пользователей: 8
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal