for flooders
:: Главная :: Решения :: Статьи :: Сайт М. Дроздова :: Файловый архив :: Книга по VFP 9 :: Русский Help Online :: OFF-LINE Форум
   Лисоводы   всех   стран,  объединяйтесь !!!  

Список Форумов  :: Вопросы по 1С
  

БП 3.0 Получить Адрес...
Аспид
Автор

Сообщений: 3338
Откуда: Москва
Дата: 13.04.15 11:29:48
В отличие от 7.7 в 8ке, реквизиты типа адреса, телефона, банков, вынесены куда то отдельно.
При записи -изменении контрагента, надо все его реквизиты, передавать в БД MS SQL
Основные реквизиты легко получаю.
  
    	MStxt   =	Объект.Наименование;  
     	MStxtFull   = Объект.НаименованиеПолное;  
  	MScod1s = Объект.Код;  
  	MSinn = Объект.ИНН;  
  	MSKPP = Объект.КПП;

А вот с адресом и телефоном, никак не получается
В каких то более ранних 8ках проходило такое
  
  		MSadres = УправлениеКонтактнойИнформацией.ПолучитьАдресИзКонтактнойИнформации(КонтрагСсылка, "Юридический");  
  		MStel = УправлениеКонтактнойИнформацией.ПолучитьТелефонИзКонтактнойИнформации(КонтрагСсылка);
а с банком так
  
  		MSRasch = Источник.ОсновнойБанковскийСчет.НомерСчета;  
  		MSBik = Источник.ОсновнойБанковскийСчет.Банк.Код;  
  		MSBank = Источник.ОсновнойБанковскийСчет.Банк.Наименование;  
  		MSKorsch = Источник.ОсновнойБанковскийСчет.Банк.КоррСчет;

Сейчас ни то, ни то не работает(
Подскажите как правильно добраться?


------------------




Исправлено: Аспид, 13.04.15 11:52
Ratings: 0 negative/0 positive

Re: БП 3.0 Передать в MS SQL Адрес...
ssa

Сообщений: 12349
Откуда: Москва
Дата: 13.04.15 11:44:25
Дело не 8-ке, а в конфиге. Именно поэтому надо всегда озвучивать версию конфиги. Это первое.
Второе: а при чем тут MS SQL, если речь о получении информации, а отнюдь не о записи её куда-то?


------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: БП 3.0 Передать в MS SQL Адрес...
Аспид
Автор

Сообщений: 3338
Откуда: Москва
Дата: 13.04.15 11:51:56
Бухгалтерия предприятия, редакция 3.0 (3.0.38.54)

Да, в название вынес, то что надо мне)))
А не суть вопроса)))
С передачей в МС проблем нет, а ты правильно заметил, проблема с получением значений.
Но увы, название не отредактировать(((

О как... получилось)))


------------------




Исправлено: Аспид, 13.04.15 11:53
Ratings: 0 negative/0 positive

Re: БП 3.0 Передать в MS SQL Адрес...
ssa

Сообщений: 12349
Откуда: Москва
Дата: 13.04.15 12:28:49
У контрагентов есть табличная часть КонтактнаяИнформация. Ищи там.


------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: БП 3.0 Передать в MS SQL Адрес...
Аспид
Автор

Сообщений: 3338
Откуда: Москва
Дата: 13.04.15 12:44:03
ssa
У контрагентов есть табличная часть КонтактнаяИнформация. Ищи там.
Вот тут и начинается, совершенно неясное для меня.
Пишу
MSTel = Объект.КонтактнаяИнформация.НомерТелефона;

Говорит нет такого поля у объекта.
Да и в подсказках, выскакивает, что угодно, но не поля.

Неверное обращение?
Так как конкретно добраться?(


------------------
Ratings: 0 negative/0 positive

Re: БП 3.0 Передать в MS SQL Адрес...
ssa

Сообщений: 12349
Откуда: Москва
Дата: 13.04.15 12:52:28
Ну так открой же Конфигуратор и посмотри структуру этой самой табличной части. Почему ты решил что там будет именно НомерТелефона?


------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: БП 3.0 Получить Адрес...
Аспид
Автор

Сообщений: 3338
Откуда: Москва
Дата: 13.04.15 12:55:12
[attachment 21331 ]
Ну в общем то там и смотрю.
Может не там?


------------------
Ratings: 0 negative/0 positive

Re: БП 3.0 Передать в MS SQL Адрес...
ssa

Сообщений: 12349
Откуда: Москва
Дата: 13.04.15 12:58:37
Аспид
ssa
У контрагентов есть табличная часть КонтактнаяИнформация. Ищи там.
Вот тут и начинается, совершенно неясное для меня.
Пишу
MSTel = Объект.КонтактнаяИнформация.НомерТелефона;

Говорит нет такого поля у объекта.
Да и в подсказках, выскакивает, что угодно, но не поля.
А давай ты будешь показывать не свое понимание или интерпретацию сообщения об ошибке, а само сообщение?

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: БП 3.0 Получить Адрес...
ssa

Сообщений: 12349
Откуда: Москва
Дата: 13.04.15 13:00:51
Аспид
[attachment 21331 ]
Ну в общем то там и смотрю.
Может не там?
Там. Смотришь. А вот теперь проверим у того ли смотришь. То есть действительно ли объект типа СправочникСсылка.Контаргент у тебя фигурирует в переменной с названием Объект.

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: БП 3.0 Получить Адрес...
Аспид
Автор

Сообщений: 3338
Откуда: Москва
Дата: 13.04.15 13:14:36
Сообщение об ишбке, подробно:
{Справочник.Контрагенты.Форма.ФормаЭлемента.Форма(366)}: Поле объекта не обнаружено (НомерТелефона)
MSadres = Объект.КонтактнаяИнформация.НомерТелефона;

Наверное, "Объект" не то.
А что то?

Вот что я делаю.
На приведенной картинке вкладка формы.
Там открываю "ФормаЭлемента"
И в ней в
&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
вставляю код.
Я думаю просто проверить, а потом разберусь, куда его правильно расположить...
1я часть работает...
а дальше вот...)


------------------
Ratings: 0 negative/0 positive

Re: БП 3.0 Получить Адрес...
ssa

Сообщений: 12349
Откуда: Москва
Дата: 13.04.15 13:17:01
Аспид
Сообщение об ишбке, подробно:
{Справочник.Контрагенты.Форма.ФормаЭлемента.Форма(366)}: Поле объекта не обнаружено (НомерТелефона)
MSadres = Объект.КонтактнаяИнформация.НомерТелефона;

Наверное, "Объект" не то.
Ставишь на этом месте точку останова и в отладчике смотришь ЧТО это такое.

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: БП 3.0 Получить Адрес...
Аспид
Автор

Сообщений: 3338
Откуда: Москва
Дата: 13.04.15 13:26:40
Честно говоря не очень понял, что смотреть(((

Остановился на строке.
Выделяя "Объект" пишет ДанныеФормаСтруктура

Или не то?
Больше и не знаю, где что посмотреть.
Либо не знаю как пользовать 1С отладчик, либо он действительно, такой... как мне кажется)))


------------------
Ratings: 0 negative/0 positive

Re: БП 3.0 Получить Адрес...
ssa

Сообщений: 12349
Откуда: Москва
Дата: 13.04.15 14:16:40
Аспид
Честно говоря не очень понял, что смотреть(((
Остановился на строке.
Выделяя "Объект" пишет ДанныеФормаСтруктура
Во!
Цитата:

Или не то?
То.
Цитата:
Больше и не знаю, где что посмотреть.
Либо не знаю как пользовать 1С отладчик, либо он действительно, такой... как мне кажется)))
Теперь показывай код. Для начала той функции/процедуры, в которой это происходит.

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: БП 3.0 Получить Адрес...
Аспид
Автор

Сообщений: 3338
Откуда: Москва
Дата: 13.04.15 14:23:58
Как и говорил, вставил в
Справочник Контрагенты:ФормаЭлемента
  
  &НаКлиенте  
  Процедура ПослеЗаписи(ПараметрыЗаписи)  
  	  
  	//Соединение с мс  
  	  
  	Соединение = новый COMобъект("ADODB.Connection");  
  	СтрокаСоединение = "Provider=SQLOLEDB.1;SERVER=Felix;database=Org;uid=sa;pwd=m955kc150RUS";   
  	Соединение.ConnectionString = (СтрокаСоединение);  
  	  
  	Попытка  
         Соединение.Open();  
          //Сообщить("MS SQL база подключена!!!");  
      Исключение  
          Сообщить("Не могу подключиться к базе!!!");  
  	КонецПопытки; 	  
  	  
  	//Запись в МС   
  	CmdMS = Новый COMОбъект("ADODB.Command");  
  	CmdRS = Новый COMОбъект("ADODB.Recordset");  
  	CmdMS.ActiveConnection = Соединение;  
  	CmdMS.CommandType = 4;  
  	  
    	MStxt   =	Объект.Наименование;  
     	MStxtFull   = Объект.НаименованиеПолное;  
  	MScod1s = Объект.Код;  
  	MSinn = Объект.ИНН;  
  	MSKPP = Объект.КПП;  
  	  
  	MSTel =  Объект.КонтактнаяИнформация.НомерТелефона;   
  	  
  	  
  	MSOKPO = Объект.КодПоОКПО;	  
  	  
  	CmdMS.CommandText = "aaaaaaa";  
  	CmdMS.Parameters.Append(CmdMS.CreateParameter("TXT",200,1,90,MStxt));  
  	CmdMS.Parameters.Append(CmdMS.CreateParameter("TXTFUll",200,1,250,MStxtFull));   
  	CmdMS.Parameters.Append(CmdMS.CreateParameter("COD1S",129,1,9,MScod1s));	  
  	CmdMS.Parameters.Append(CmdMS.CreateParameter("INN",129,1,20,MSinn));  
  	CmdMS.Parameters.Append(CmdMS.CreateParameter("kpp",200,1,40,MSKPP));  
  	CmdMS.Parameters.Append(CmdMS.CreateParameter("Okpo",200,1,40,MSOKPO));  
  	  
  	CmdMS.EXECUTE ();  
  	///////  
    
  	//Это 2 строки, которые были раньше в этой проецдуре  
  	СостояниеКонтрагентаИзменилось = Ложь;  
  	Оповестить("Запись_Контрагенты", , Объект.Ссылка);  
  	  
  КонецПроцедуры

В Объект.КонтактнаяИнформация выводится контекстная подсказка.
Там никакого НомерТелефона нет.
Есть обращение к функциям, видимо предопределенным...
Как добраться не пойму.

В инете нашел, через выбокри получают, путанно)))
И главное, здесь кажется это ни к чему, потому как оно где то рядом лежит, только добраться б...)


------------------




Исправлено: Аспид, 13.04.15 14:28
Ratings: 0 negative/0 positive

Re: БП 3.0 Получить Адрес...
ssa

Сообщений: 12349
Откуда: Москва
Дата: 13.04.15 14:39:45
Попробуй
MSTel =  Объект.КонтактнаяИнформация[0].НомерТелефона;
В твоем варианте идет обращение к имени колонки без указания строки в табличной части. Невозможно в одну переменную запихать всю колонку. Потому тебе и в подсказке не показывает.


------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: БП 3.0 Получить Адрес...
Аспид
Автор

Сообщений: 3338
Откуда: Москва
Дата: 13.04.15 14:54:44
Прогресс есть)))
Ошибку не выводит, в БД пишет..., но... строка пустая.
Попробовал MSTel = Объект.КонтактнаяИнформация[1].НомерТелефона;
То же самое. Пусто.

А вообще не понятно.
[0] это № записи типа?
В общем не ясно, как здесь все организовано.


------------------
Ratings: 0 negative/0 positive

Re: БП 3.0 Получить Адрес...
ssa

Сообщений: 12349
Откуда: Москва
Дата: 13.04.15 15:07:45
Аспид
Прогресс есть)))
Ошибку не выводит, в БД пишет..., но... строка пустая.
Попробовал MSTel = Объект.КонтактнаяИнформация[1].НомерТелефона;
То же самое. Пусто.

А вообще не понятно.
[0] это № записи типа?
Это индекс записи, начинается с 0.
Цитата:
В общем не ясно, как здесь все организовано.
Получи запросом все записи по контрагенту и посмотри их. Может там и действительно ничего нет.

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: БП 3.0 Получить Адрес...
Аспид
Автор

Сообщений: 3338
Откуда: Москва
Дата: 13.04.15 15:08:43
Попробовал вот так
  
  	MSTel =  Объект.КонтактнаяИнформация[1].Представление;  
  	  
  	MSAdr = Объект.КонтактнаяИнформация[0].Представление;
Получаю одно и то же.
Адрес.


------------------
Ratings: 0 negative/0 positive

Re: БП 3.0 Получить Адрес...
Аспид
Автор

Сообщений: 3338
Откуда: Москва
Дата: 13.04.15 15:10:42
ssa
Получи запросом все записи по контрагенту и посмотри их. Может там и действительно ничего нет.
Ну запрос для меня ихний... ))) боюсь еще день провожусь)))
Но я же смотрю реквизиты в форме, все есть.
Более того, я его даже еще поменял.
и все равно, пустая строка.


------------------
Ratings: 0 negative/0 positive

Re: БП 3.0 Получить Адрес...
Аспид
Автор

Сообщений: 3338
Откуда: Москва
Дата: 13.04.15 15:12:51
Кстати MSAdr = Объект.КонтактнаяИнформация[0].Представление; вполне устраивает.
Правда нге пойму какой адрес юр или факт.
Но сейчас проверю.


------------------
Ratings: 0 negative/0 positive



Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 7 Taran Тьма  (Гостей: 5)

16.09.2019 17:05:56 exec: 0.17
Mem: 1.423 Mb

© 2000-2019 Fox Club 
Яндекс.Метрика