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

Автор Тема: Процедура НаименованиеПриИзменении(Элемент)  (Прочитано 1988 раз)

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

Оффлайн saha85

  • *
  • Сообщений: 17
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-12
  • Сайт: 
  • Профессия: Ученик 1С
Есть "СправочникПациентов" созданы "реквизиты" Фамилия,Имя,Отчества. и общий реквизит "Наименование"
Вот хочу чтобы когда провисают Ф.И.О они делились на Фамилия,Имя,Отчества.

Процедура НаименованиеПриИзменении(Элемент)
   Наименование = СокрЛП(Наименование);   
   Пока Не Найти(Наименование, "  ") = 0 Цикл
      Наименование = СтрЗаменить(Наименование, "  ", " ");
   КонецЦикла;

   ФИО = Наименование;
   
   Если ПустаяСтрока(ЭтаФорма.Фамилия) Или ЭтаФорма.ЭтоНовый() Тогда
      МассивФИО = ОбщегоНазначения.ПолучитьМассивФИО(ФИО);
      ЭтаФорма.Фамилия  = МассивФИО[0];
      ЭтаФорма.Имя      = МассивФИО[1];
      ЭтаФорма.Отчество = МассивФИО[2];      
   КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура НаименованиеПриИзменении1(Элемент)
   // Вставить содержимое обработчика.<Что тут указать
КонецПроцедуры

Выдает ошибку:
{Справочник.СправочникПациентов.Форма.ФормаЭлемента.Форма(10,15)}: Переменная не определена (ОбщегоНазначения)
      МассивФИО = <<?>>ОбщегоНазначения.ПолучитьМассивФИО(ФИО); (Проверка: Сервер)
{Справочник.СправочникПациентов.Форма.ФормаЭлемента.Форма(10,15)}: Переменная не определена (ОбщегоНазначения)
      МассивФИО = <<?>>ОбщегоНазначения.ПолучитьМассивФИО(ФИО); (Проверка: Мобильное приложение-сервер)

Версия 1с 8.3


Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Код откуда-то передрали, теперь надо ссылку на общий модуль убрать.
В первоисточнике идете в общий модуль ОбщегоНазначения и находите метод ПолучитьМассивФИО().
Копируете его или сюда же в модуль формы или в такой же общий модуль только уже у себя в конфиге.
После этого соответственно корректируете вызов этого метода.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн saha85

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

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Навашем процидере сложно привести пример

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
потому что мы не знаем:
а. откуда передрали
б. у себя будете в общем модуле размещать или прямо тут в модуле формы

да и задача на самом деле....
блин, ну должны же быть хоть какие-то примитивные вещи, для решения которых надо просто чуток пошевелить мозгами!
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн saha85

  • *
  • Сообщений: 17
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-12
  • Сайт: 
  • Профессия: Ученик 1С
надо просто чуток пошевелить мозгами!
Блин хорошо когда тебе обучали а я сам обучаюсь 1с как говорят инет и книги в помаш Спасибо.
Вот Скрины

Конструкторе:

Внешний вид:

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
а. почти прослезился. никто особо не обучал. те же книги и инет (ща опять шапками закидают за якобы самолюбование :trhregerhg: )
б. скрины форм - нафиг не нужны. дело в коде.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн saha85

  • *
  • Сообщений: 17
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-12
  • Сайт: 
  • Профессия: Ученик 1С
дело в коде.
Так я понемаю но ошибку не могу найти :dfbsdfbsdf:

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
МассивФИО = ОбщегоНазначения.ПолучитьМассивФИО(ФИО);

в вашей конфиге есть общий модуль ОбщегоНазначения?
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн saha85

  • *
  • Сообщений: 17
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-12
  • Сайт: 
  • Профессия: Ученик 1С
Да обнаружил:
Цитировать
////////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ И ФУНКЦИИ ЗАПИСИ НАБОРА КОНСТАНТ
// Записывает набор констант, сравнивая его с эталонным набором
// Записываются только те константы, которые были изменены относительно эталонного набора
// Параметры:
//  НаборКонстант  - Набор констант
//  ЭталонныйНабор - Эталонный набор констант
//  Модифицированность - Устанавливается в истину, если операция выполнена успешно
// Возвращаемое значение:
//  Истина - операция выполнена, ложь - иначе.
// Функция "расщепляет" строку на подстроки, используя заданный
//      разделитель. Разделитель может иметь любую длину.
//      Если в качестве разделителя задан пробел, рядом стоящие пробелы
//      считаются одним разделителем, а ведущие и хвостовые пробелы параметра Стр
//      игнорируются.
//      Например,
//      РазложитьСтрокуВМассивПодстрок(",ку,,,му", ",") возвратит массив значений из пяти элементов,
//      три из которых - пустые строки, а
//      РазложитьСтрокуВМассивПодстрок(" ку   му", " ") возвратит массив значений из двух элементов
//
//   Параметры:
//      Стр -          строка, которую необходимо разложить на подстроки.
//                  Параметр передается по значению.
//      Разделитель -    строка-разделитель, по умолчанию - запятая.
//
//
//   Возвращаемое значение:
//      массив значений, элементы которого - подстроки
//
Функция РазложитьСтрокуВМассивПодстрок(Знач Стр, Разделитель = ",") Экспорт
   
   МассивСтрок = Новый Массив();
   Если Разделитель = " " Тогда
      Стр = СокрЛП(Стр);
      Пока 1=1 Цикл
         Поз = Найти(Стр,Разделитель);
         Если Поз=0 Тогда
            МассивСтрок.Добавить(Стр);
            Возврат МассивСтрок;
         КонецЕсли;
         МассивСтрок.Добавить(Лев(Стр,Поз-1));
         Стр = СокрЛ(Сред(Стр,Поз));
      КонецЦикла;
   Иначе
      ДлинаРазделителя = СтрДлина(Разделитель);
      Пока 1=1 Цикл
         Поз = Найти(Стр,Разделитель);
         Если Поз=0 Тогда
            МассивСтрок.Добавить(Стр);
            Возврат МассивСтрок;
         КонецЕсли;
         МассивСтрок.Добавить(Лев(Стр,Поз-1));
         Стр = Сред(Стр,Поз+ДлинаРазделителя);
      КонецЦикла;
   КонецЕсли;
   
КонецФункции // глРазложить

// Функция раскладывает Наименование в массив из трех элементов
//
// Параметры
//  ФИО  - строка - наименование
//
// Возвращаемое значение:
//   Массив   - массив из трех элементов, Фамилия, Имя, Отчество
//
Функция ПолучитьМассивФИО(ФИО) Экспорт

   МассивФИО = Новый Массив;
   МассивФИО.Добавить("");
   МассивФИО.Добавить("");
   МассивФИО.Добавить("");
   
   МассивПодсток = ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок(ФИО, " ");
   Для Индекс = 0 По МассивПодсток.ВГраница() Цикл
      Если Индекс < 3 Тогда
         МассивФИО[Индекс] = МассивПодсток[Индекс];
      Иначе
         МассивФИО[2] = МассивФИО[2] + " " + МассивПодсток[Индекс];
      КонецЕсли;
   КонецЦикла;

   Возврат МассивФИО;
   
КонецФункции // ПолучитьМассивФИО()

вот только понять бы где Переменная не определена (ОбщегоНазначения)
   МассивПодсток = <<?>>ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок(ФИО, " "); (Проверка: Сервер)

где нужно ПРИСВОИТЬ ПЕРЕМЕННУЮ КОТОРУЮ Я УКАЗАЛ В цитате
Добавлено: 25 Июн 2015, 20:45

УРА-А-А-А-А-А-А-А-А-А-А-А
РАБОТАЕТ:zebzdr::zebzdr::zebzdr:
Проблема не было процедуры для тонкого клиента а в толстам клиенте работала а как оказывается 8.3 автоматом тонкий клиент

Последний раз редактировалось: saha85; 25 Июн 2015, 20:45. Причина: Объединение сообщений


Теги:
 

Процедура "ОбработкаПроведения"

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

Ответов: 5
Просмотров: 1375
Последний ответ 22 Июн 2016, 14:46
от demon3
Процедура "Подсчет площади"

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

Ответов: 4
Просмотров: 2713
Последний ответ 28 Ноя 2013, 13:00
от Seregin63
Как в 1С 8.2 при проведении документа заполнить элемент справочника информацией из документа?

Автор Галина55555Раздел Беседка

Ответов: 1
Просмотров: 5680
Последний ответ 01 Июл 2014, 16:44
от Галина55555
УТ11.1 Ошибка "Предопределенный элемент не уникален"

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

Ответов: 8
Просмотров: 7638
Последний ответ 21 Янв 2015, 07:35
от pavel-P
Перенесено: В 1с77 Как связать новый Элемент формы справочника с реквизитом справочника?

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

Ответов: 0
Просмотров: 477
Последний ответ 22 Ноя 2016, 06:38
от cska-fanat-kz

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
106 Сообщений
AIFrame
100 Сообщений
alex0402
30 Сообщений
kiksi
19 Сообщений
pavl_vs
19 Сообщений
alexandr_ll
17 Сообщений
andron81_81
16 Сообщений
Norfolk
15 Сообщений
LexaK
13 Сообщений
BuhRust
12 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal