8.х Проблемы с открытием форм

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Sir_Prikol, 28 янв 2010.

  1. TopicStarter Overlay
    Sir_Prikol
    Offline

    Sir_Prikol

    Регистрация:
    28 янв 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Доброго времени суток. Существует следующая проблема. Сканирую штрих код. 1С сравнивает штрихкод с имеющимися в базе и на основании этого выкидывает форму, где идет расшифровка товара. Но, если этого штрихкода нет в базе, то открывается пустая форма с возможностью добавления описания товара. Там есть кнопка выбора, которая открывает еще одну форму с каталогом. Теперь вопрос. Каким образом можно автоматом открывать следующую форму опустив процесс нажатия на кнопку (делается для увеличения скорости ввода данных в базу).
  2. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    поправить код процедуры ПРИОТКРЫТИИ() той формы, в которой добавляется описание товара.
  3. TopicStarter Overlay
    Sir_Prikol
    Offline

    Sir_Prikol

    Регистрация:
    28 янв 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Ставил следующее


    Процедура ПриОткрытии()


    Если ЭтаФорма.ЭлементыФормы.ВМагазин.Значение=Справочники.Номенклатура.ПустаяСсылка() тогда
    возврат;
    КонецЕсли;


    ТекЗапись = РегистрыСведений.Штрихкоды.СоздатьМенеджерЗаписи();
    ТекЗапись.Владелец = Магазин.Ссылка;
    ТекЗапись.ЕдиницаИзмерения = Магазин.ЕдиницаХраненияОстатков;
    ТекЗапись.ТипШтрихкода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13;
    ТекЗапись.Качество = Справочники.Качество.Новый;
    ТекЗапись.Штрихкод = Ставр(Штр1);


    Попытка
    ТекЗапись.Записать();
    ЭтаФорма.ЭлементыФормы.Кнопка1.Видимость=Истина;
    Исключение

    КонецПопытки;

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




    Толку ноль, не открывает следующую форму :(
  4. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Ещё надо тот код, который отрабатывает при нажатии на кнопку по которой открывается форма каталога
  5. TopicStarter Overlay
    Sir_Prikol
    Offline

    Sir_Prikol

    Регистрация:
    28 янв 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Они идентичны. Но по кнопке открывается, а при открытии формы - не хочет
  6. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Значит не идентичны. Текст процедуры нажатия на кнопку должен быть другой - 100%.
    Я так понимаю, там должна форма открываться, возможно справочника НОМЕНКЛАТУРА.
  7. TopicStarter Overlay
    Sir_Prikol
    Offline

    Sir_Prikol

    Регистрация:
    28 янв 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Процедура ПриОткрытии()


    Если ЭтаФорма.ЭлементыФормы.ВМагазин.Значение=Справочники.Номенклатура.ПустаяСсылка() тогда
    возврат;
    КонецЕсли;


    ТекЗапись = РегистрыСведений.Штрихкоды.СоздатьМенеджерЗаписи();
    ТекЗапись.Владелец = Магазин.Ссылка;
    ТекЗапись.ЕдиницаИзмерения = Магазин.ЕдиницаХраненияОстатков;
    ТекЗапись.ТипШтрихкода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13;
    ТекЗапись.Качество = Справочники.Качество.Новый;
    ТекЗапись.Штрихкод = Ставр(Штр1);


    Попытка
    ТекЗапись.Записать();
    ЭтаФорма.ЭлементыФормы.Кнопка1.Видимость=Истина;
    Исключение

    КонецПопытки;

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






    Процедура Кнопка12Нажатие(Элемент)


    Если ЭтаФорма.ЭлементыФормы.ВМагазин.Значение=Справочники.Номенклатура.ПустаяСсылка() тогда
    возврат;
    КонецЕсли;


    ТекЗапись = РегистрыСведений.Штрихкоды.СоздатьМенеджерЗаписи();
    ТекЗапись.Владелец = Магазин.Ссылка;
    ТекЗапись.ЕдиницаИзмерения = Магазин.ЕдиницаХраненияОстатков;
    ТекЗапись.ТипШтрихкода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13;
    ТекЗапись.Качество = Справочники.Качество.Новый;
    ТекЗапись.Штрихкод = Ставр(Штр1);


    Попытка
    ТекЗапись.Записать();
    ЭтаФорма.ЭлементыФормы.Кнопка1.Видимость=Истина;
    Исключение

    КонецПопытки;

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





    Кроме названия процедуры, одинаковы. Сначала сам думал, что ступил, но просто напрямую откопировал изменив название процедуры и все...
  8. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Я может чего-то не понимаю, но судя по коду, это уже регистрация штрихкода в базе с соответствующей номенклатурой. Тут даже не совсем понятно, фигурирует ли номенклатура....

    кинь конфу в личку.....
  9. TopicStarter Overlay
    Sir_Prikol
    Offline

    Sir_Prikol

    Регистрация:
    28 янв 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Кинул, маленькое добавление ОС Вида 7 энтерпрайз
  10. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Не важно какая винда. Я так понял, что кнопка выбора - кнопка у поля НОМЕНКЛАТУРЫ, потому что отдельной процедуры выбора номенклатуры в куске кода нет.

    Если кнопка выбора реально у поля номенклатуры, то при открытии нужно писать:

    Код:
    Если ЭтаФорма.ЭлементыФормы.ВМагазин.Значение=Справочники.Номенклатура.ПустаяСсылка() тогда
    
    формавыбора = справочники.номенклатура.получитьформувыбора(,этаформа);
    формавыбора.режимвыбора = истина;
    формавыбора.закрыватьпривыборе = истина;
    ЭтаФорма.ЭлементыФормы.ВМагазин.Значение = формавыбора.открытьмодально().ссылка;
    
    КонецЕсли;
    
    
    При открытии этой формы, если будет пустое поле номенклатруры, откроется форма выбора номенклатуры.

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