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

Автор Тема: Моя Конфигурация  (Прочитано 22890 раз)

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

Оффлайн CosmicBoy

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-02-10
  • Сайт: 
  • Профессия: Ученик 1С
Доброе время суток  <_<
К сожалению не обучался работе с БД, но жизнь вынудила заняться.
В общем по долгу службы создал своими силами БД в 1с.
Вся база представляет собой множество справочников которые перекликаются между собою, на большее меня не хватило.
В идеале многого мне в конфигурации не нужно, но чего сейчас имею явно мало.

Самое наболевшее, как при определенном значении поля "тип" заголовок поля "тип" приобретает определенный цвет.
Значение поля тип определяется справочником "Тип".


Оффлайн sadovod

  • ****
  • Сообщений: 289
  • РЕПУТАЦИЯ: 53
  • КПД: 18%
  • Регистрация: 2012-02-19
  • Сайт: 
  • Профессия: Программист 1С
Re: Моя Конфигурация
« Ответ #1: 10 Фев 2013, 22:16 »
Нужно писать код в обработчике события ПриИзменении() элемента формы "Тип".
Можно сделать так:
в редакторе формы (левая часть) на элементе "Тип" правой кнопкой мышки выберите в контекстном меню События > При изменении. В модуле формы будет создан обработчик события с именем ТипПриИзменении(Элемент). Вам нужно в тело этой процедуры вставить примерно такой код, разумеется заменив то, что я поместил в <> вашим значением. (Кстати его ещё нужно правильно получить из справочника)
&НаКлиенте
Процедура ТипПриИзменении(Элемент)
    Если Объект.Тип = <ЗаданноеВамиЗначение> Тогда
        Элементы.Тип.ЦветТекстаЗаголовка = WebЦвета.Синий;   //  ну или красный :)
    КонецЕсли;
КонецПроцедуры

Оффлайн CosmicBoy

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-02-10
  • Сайт: 
  • Профессия: Ученик 1С
Re: Моя Конфигурация
« Ответ #2: 11 Фев 2013, 18:46 »
Спасибо за быстрый и внятный ответ, однако не чего не получается, отладка без ошибок но при изменении на значение 000000004 объекта "тип" ничего не происходит, как был текст авто цвета так и остался :wacko:

Оффлайн sadovod

  • ****
  • Сообщений: 289
  • РЕПУТАЦИЯ: 53
  • КПД: 18%
  • Регистрация: 2012-02-19
  • Сайт: 
  • Профессия: Программист 1С
Re: Моя Конфигурация
« Ответ #3: 11 Фев 2013, 20:32 »
Ну, я примерно так и предполагал - "(Кстати его ещё нужно правильно получить из справочника)" :)
Вам чертовски много нужно прочитать, можно (и нужно) начать с книги М.Радченко (бюджетный вариант учёбы), или с видеокурсов Е.Гилёва (недёшево, но крайне результативно).
В чём суть вашей текущей ошибки. У вас в справочнике "Извещение" есть реквизит с типом "СправочникСсылка.Тип" (это так в 1С называется ссылка на другой справочник). Данные, хранящиеся в этом реквизите имеют такой ссылочный тип, поэтому сравнивать в условном выражении нужно именно с ссылкой из справочника "Тип", а это совсем не '000000004'. У вас же происходит сравнение с числом 4, и внутрь условия программа не заходит.
Как правильно получить нужное значение. Вот пример кода, основываясь на ваших скринах:

&НаКлиенте
Процедура ТипПриИзменении(Элемент)
    НужныйТип = ПолучитьНужныйТип();
    Если Объект.Тип = НужныйТип Тогда
        Элементы.Тип.ЦветТекстаЗаголовка = WebЦвета.Синий;   //  ну или красный :)   
    КонецЕсли;
КонецПроцедуры

&НаСервере
Функция ПолучитьНужныйТип()
    НайтиТип = Справочники.Тип.НайтиПоНаименованию("ЛИМ");
    // или вариант, можете попробовать его тоже
    // НайтиТип = Справочники.Тип.НайтиПоКоду("000000004");  //  в числе нулей я мог ошибиться :)
    Возврат НайтиТип;
КонецФункции

Вот как-то так, удачи :)

Оффлайн CosmicBoy

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-02-10
  • Сайт: 
  • Профессия: Ученик 1С
Re: Моя Конфигурация
« Ответ #4: 11 Фев 2013, 22:22 »
С пособием М.Радченко как раз и работаю, добился бы я без него такииих высот, вряд ли :bleh:
По существу тяжело с этой книгой работать, т.к. уклад у нее все равно бухгалтерский, многое темный лес, а так с разбегу очень тяжело все это понять. В любом случае изучение этой книги я не забросил, учу как могу. Видио курс этот тоже заточен под бухгалтерию или широко раскрывает потенциал по сути всего 1с?
За код спасибо огромное, но сразу он не за работал =)  эт уже особенность конфигурации, витиеватое название справочников, нужен был справочник типИзвещения, подправил, все заработало.
Вот по коду ликБез:
Функция ПолучитьНужныйТип() // получитьнужныйтип - это переменная которая будет найдена в коде описанном ниже?
НайтиТип = Справочники.Тип.НайтиПоНаименованию("ЛИМ") // найтиТип переменная равная значению записи в справочнике с наименованием "ЛИМ"? т.е. некое значение представленное ссылкой на данную строку в справочнике?
Возврат НайтиТип; - а зачем возврат? :nhsrm:
И да от противного, если наоборот нужно неравенство значению, то какую команду или символ использовать в коде?

Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2857
  • РЕПУТАЦИЯ: 546
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
Re: Моя Конфигурация
« Ответ #5: 12 Фев 2013, 01:20 »
Думаю вариант с добавить в справочник реквизиты RGB и конструктором создавать при изменении реквизита новый Цвет будет лучше!
Ну или текстовый реквизит со списком имен цветов из коллекции WEBЦветов, т.е. определяешь сам список нужных тебе цветов и записываешь их в справочник.
(Т.к. у коллекции WEBЦвета в 1С нет возможности обойти коллекцию полностью - можно только задать вручную.)
2 примера:

//№1
&НаКлиенте
Процедура ПриИзмененииМойРеквизит(Элемент)

   //У справочника есть реквизит "ЦеветТекста" с типом строка где указан цвет "Желтый"
   Попытка
      Элемент.ЦветТекста = WEBЦвета[Объект.ЦеветТекста];
   Исключение
   КонецПопытки;

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

//№2
&НаКлиенте
Процедура ПриИзмененииМойРеквизит(Элемент)
   //У справочника есть реквизиты "R","G","B" с типом число длинна 3 точность 0
   // R=100, G=50, B=250
   Попытка
      Элемент.ЦветТекста = Новый Цвет(Объект.R,Объект.G,Объект.B);
   Исключение
   КонецПопытки;

КонецПроцедуры
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Оффлайн CosmicBoy

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-02-10
  • Сайт: 
  • Профессия: Ученик 1С
Re: Моя Конфигурация
« Ответ #6: 12 Фев 2013, 07:58 »
Dethmontt,
Спасибо за идею, внедрил, понравилось =)
Все же интересно как написать условие
Если Объект.Тип "не =" НужныйТип Тогда ?

Оффлайн Yura063

  • *****
  • Сообщений: 1045
  • РЕПУТАЦИЯ: 136
  • КПД: 13%
  • Регистрация: 2010-11-15
  • Сайт: yuis.ru
  • Профессия: Программист 1С
Re: Моя Конфигурация
« Ответ #7: 12 Фев 2013, 08:51 »
Цитировать
Если Объект.Тип "не =" НужныйТип Тогда ?

Наверное
Если НЕ Объект.тип = НужныйТип Тогда
Помогли, отблагодари!

Оффлайн CosmicBoy

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-02-10
  • Сайт: 
  • Профессия: Ученик 1С
Re: Моя Конфигурация
« Ответ #8: 12 Фев 2013, 18:53 »
Yura063,
Оу, истина была так рядом :wacko:
Добавлено: 12 Фев 2013, 19:34

А в случае если нужно при пустом значении Объект.тип...
вариант: Если объект.Тип = 0 тогда... не проходит, я так понимаю там не совсем нулевое значение если даже графа пустая?

Последний раз редактировалось: CosmicBoy; 12 Фев 2013, 19:34

Оффлайн sadovod

  • ****
  • Сообщений: 289
  • РЕПУТАЦИЯ: 53
  • КПД: 18%
  • Регистрация: 2012-02-19
  • Сайт: 
  • Профессия: Программист 1С
Re: Моя Конфигурация
« Ответ #9: 12 Фев 2013, 20:37 »
>> т.е. некое значение представленное ссылкой на данную строку в справочнике?
Именно так.

>> А в случае если нужно при пустом значении Объект.тип..
Если Объект.Тип = Справочники.типИзвещения.ПустаяСсылка() Тогда
Добавлено: 12 Фев 2013, 20:49

>> получитьнужныйтип - это переменная которая будет найдена в коде описанном ниже? ... а зачем возврат?
Обязательно где-нибудь прочитайте, что такое процедуры и функции в языках программирования, для чего они нужны и чем отличаются друг от друга. Лучше будет почитать об этом не в пособиях по 1С, а по какому-нибудь простому алгоритмическому языку (Паскаль, например)...
Просто, боюсь, кратко я не смогу здесь это рассказать.

Последний раз редактировалось: sadovod; 12 Фев 2013, 20:49


Теги:
 

Конфигурация "1С:Оценка персонала"

Автор lyuberРаздел Пользователям "1С - Предприятие 8"

Ответов: 3
Просмотров: 4675
Последний ответ 05 Авг 2011, 11:09
от chuevsf
конфигурация "Управление торговлей 10.3" для 8.2

Автор bahtovarРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 0
Просмотров: 3234
Последний ответ 18 Окт 2011, 13:22
от bahtovar
Права и конфигурация "кладовщик"

Автор DetsleРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 589
Последний ответ 14 Июн 2017, 13:13
от xdto
При старте системы выдает ошибку ВнешняяОбработка.Платформа.МодульОбъекта(111):Значение не является значением объектного типа(ТипМножественноеЧисло) конфигурация Полный учет в отделе ИТ(2017.3.1)

Автор ZSSРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 7
Просмотров: 497
Последний ответ 20 Сен 2017, 09:10
от Геннадий ОбьГЭС
Разыскивается Конфигурация "Инпро:Мука 8"

Автор aapospelovРаздел Беседка

Ответов: 0
Просмотров: 2220
Последний ответ 08 Мар 2011, 10:02
от aapospelov

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
133 Сообщений
AIFrame
73 Сообщений
alex0402
52 Сообщений
ilyay ilyay
51 Сообщений
andron81_81
44 Сообщений
oleg-x
35 Сообщений
MuI_I_Ika MuI_I_Ika
31 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
27 Сообщений
alexandr_ll
23 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal