7.7 Денежный счет по кассе

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем змейкин, 25 май 2013.

  1. TopicStarter Overlay
    змейкин
    Offline

    змейкин Опытный в 1С

    Регистрация:
    25 мар 2013
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    Проблема.. вроде все норм прописал но почему то не находит у меня кассу с гривней.Касса это тип справочника "ДенежныеСчета" денежные счета подчинены Справочнику.фирмы
    по которому я ищу гривневый счет но ненахожу.... вот как делаю
    Код:
    Процедура ИзмКасса()
    Если Касса.Выбран() = 0 Тогда
    Возврат;
    КонецЕсли;
    Если Касса.Владелец <> Фирма Тогда
    Касса = глПолучитьКассу(Фирма, Гривня);
    Предупреждение("Выбранная касса принадлежит другой фирме!");
    Возврат;
    КонецЕсли;
    Если Касса.Валюта <> Гривня Тогда
    Предупреждение("Выплачивать зарплату можно только в национальной валюте!");
    Касса = глПолучитьКассу(Фирма, Гривня);
    КонецЕсли;
    КонецПроцедуры
    
    и в глобальном
    Код:
    Функция глПолучитьКассу(Фирма, Знач Валюта) Экспорт
    Если ПустоеЗначение(Фирма) = 1 Тогда
    Возврат ПолучитьПустоеЗначение("Справочник.ДенежныеСчета")
    КонецЕсли;
    Валюта = ?(ПустоеЗначение(Валюта) = 1, Гривня, Валюта);
    Спр = СоздатьОбъект("Справочник.ДенежныеСчета");
    Спр.ИспользоватьВладельца(Фирма);
    Спр.ВыбратьЭлементы();
    Пока Спр.ПолучитьЭлемент() = 1 Цикл
    Если (Спр.ПометкаУдаления() = 1) или (Спр.ЭтоГруппа() = 1) Тогда
    Продолжить;
    КонецЕсли;
    Если Спр.Валюта = Валюта Тогда
    Возврат Спр.ТекущийЭлемент();
    КонецЕсли;
    КонецЦикла;
    глКомментарий("Не найдена касса с валютой " + Валюта + " по фирме " + Фирма + "!",0,,"!");
    Возврат ПолучитьПустоеЗначение("Справочник.ДенежныеСчета");
    КонецФункции
    
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Попробуйте так
    Код:
      Если Спр.Валюта = Валюта.ТекущийЭлемент() Тогда
    Возврат Спр.ТекущийЭлемент();
    КонецЕсли;
  3. TopicStarter Overlay
    змейкин
    Offline

    змейкин Опытный в 1С

    Регистрация:
    25 мар 2013
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    Код:
    Значение не представляет агрегатный объект (ТекущийЭлемент)
    вот что пишет(
  4. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Тогда однозначно проблема здесь
    Код:
    Валюта = ?(ПустоеЗначение(Валюта) = 1, Гривня, Валюта);
    Похоже Гривня - это глобальная переменная. По идее должна инициализироваться в ГМ в процедуре ПриНачалеРаботыСистемы
  5. TopicStarter Overlay
    змейкин
    Offline

    змейкин Опытный в 1С

    Регистрация:
    25 мар 2013
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    Зделал добавил в процедуру
    Код:
    Процедура  ПриНачалеРаботыСистемы()
    Гривня = Константа.БазВалюта;
    ПрефиксАвтонумерации("Документ.Договор","ДГ-");
    ПрефиксАвтонумерации("Документ.ПриходнаяНакладная","ПН-");
    ПрефиксАвтонумерации("Документ.РасходнаяНакладная","РН-");
    ПрефиксАвтонумерации("Документ.Счет","СФ-");
    Если глИспользуетсяРазделительУчета = 0 Тогда
    ЗаголовокСистемы(СокрЛП(Константа.БазФирма.ПолноеНаименование));
    КонецЕсли;
    КонецПроцедуры
    
    Все равно не видит вроде все верно Нахожу в справочнике денежные счета реквизит "валюта" в нем Гривну и делаю проверку
  6. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Проверьте, не является ли константа периодическим реквизитом. В этом случае нужно использовать метод получить()
  7. TopicStarter Overlay
    змейкин
    Offline

    змейкин Опытный в 1С

    Регистрация:
    25 мар 2013
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    константа "БазВалюта" не периодический реквизит проверил)
  8. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Может вы глобальную переменную внутри какого-то модуля обнуляете?
    Пройдитесь отладчиком.
    Пот в этом месте
    Код:
    Валюта = ?(ПустоеЗначение(Валюта) = 1, Гривня, Валюта);
    и ПриНачалеРаботыСистемы чему переменная гривня равна?
  9. TopicStarter Overlay
    змейкин
    Offline

    змейкин Опытный в 1С

    Регистрация:
    25 мар 2013
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    "Гривня = "Пишет пустота;Перем Гривня Экспорт обьявлена только в глобальном модуле,больше не опряделял в модулях
  10. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    не определяется, но похоже обнуляется.... Вы же сказали что ПриНачалеРаботыСистемы она установлена... Вывод - где-то обнуляете.
  11. TopicStarter Overlay
    змейкин
    Offline

    змейкин Опытный в 1С

    Регистрация:
    25 мар 2013
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    Точно вот я Алень! у меня константа "основнаяВалюта)"а при работе системы Базвалюта все из за невнимательности(

    Спасибо огромное то б наверно так и не заметил(

Поделиться этой страницей