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

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

БП 3.0 Добраться до банков и контактных лиц контрагента
Аспид

Сообщений: 3293
Откуда: Москва
Дата: 14.04.15 11:05:27
в БП 2.0 или более ранних проходил такое получение инфы о банках
  
                MSRasch = Источник.ОсновнойБанковскийСчет.НомерСчета;    
    		MSBik = Источник.ОсновнойБанковскийСчет.Банк.Код;    
    		MSBank = Источник.ОсновнойБанковскийСчет.Банк.Наименование;    
    		MSKorsch = Источник.ОсновнойБанковскийСчет.Банк.КоррСчет;
в 3.0 такое не работает.
Как то думаю, надо обращаться к справочнику "Банковские счета"
И из него получать.
Но как? все это хочется кодом/, для записи в MS SQL
Думаю для контактных лиц, будет аналогично.


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




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

Re: БП 3.0 Добраться до банков и контактных лиц контрагента
ssa
Автор

Сообщений: 12248
Откуда: Москва
Дата: 14.04.15 11:08:39
И опять двадцать пять...
Источник - это ЧТО? Организация? Контрагент? ЧТО?


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

Re: БП 3.0 Добраться до банков и контактных лиц контрагента
Аспид

Сообщений: 3293
Откуда: Москва
Дата: 14.04.15 11:16:50
Утверждают что это ссылка на контрагента.
Но в 3 это не работает.


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

Re: БП 3.0 Добраться до банков и контактных лиц контрагента
ssa
Автор

Сообщений: 12248
Откуда: Москва
Дата: 14.04.15 11:22:40
Аспид
Утверждают что это ссылка на контрагента.
Но в 3 это не работает.
Ну так открываешь пофигуратор и смотришь наличие у справочника Контрагенты реквизита ОсновнойБанковскийСчет. Нашел? Если нашел, значит дело опять в неправильном типе и Источник у тебя никак не СправочникСсылка.Контрагент.

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

Re: БП 3.0 Добраться до банков и контактных лиц контрагента
Аспид

Сообщений: 3293
Откуда: Москва
Дата: 14.04.15 11:39:35
Я смотрю отладчиком.
Останавливаю.
сейчас код такой
ОБС = Объект.ОсновнойБанковскийСчет;
на ОБС пишет что тип "Справочникссылка.Банковские счета"
Раскрываю в отладчике поле "Объект"
в нем есть это поле с тип "Справочникссылка.Банковские счета"

А теперь вопрос, а как до нужных данных добраться?


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

Re: БП 3.0 Добраться до банков и контактных лиц контрагента
ssa
Автор

Сообщений: 12248
Откуда: Москва
Дата: 14.04.15 12:02:53
Аспид
Я смотрю отладчиком.
Останавливаю.
сейчас код такой
ОБС = Объект.ОсновнойБанковскийСчет;
на ОБС пишет что тип "Справочникссылка.Банковские счета"
Раскрываю в отладчике поле "Объект"
в нем есть это поле с тип "Справочникссылка.Банковские счета"

А теперь вопрос, а как до нужных данных добраться?
Так же, как и до других. Принцип один - указание реквизитов через точку. Точно так же как и в фоксе. Точно так же как и в 2.0 Нужно только правильные реквизиты у правильных типов указывать. Нет никаких особенностей и инопланетных заморочек. Если Объект имеет тип Справочникссылка.Банковскиесчета, то для получения значения реквизита достаточно написать Объект.<ИмяРеквизита>. На чем основываются поиски как-то особенного способа обращения к нужным данным?

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

Re: БП 3.0 Добраться до банков и контактных лиц контрагента
Аспид

Сообщений: 3293
Откуда: Москва
Дата: 14.04.15 12:16:30
Вот это и не понятно.
вот картинка
[attachment 21343 ]
казалось бы, и ты так говоришь, обращаться надо
MSRasch = Объект.ОсновнойБанковскийСчет.НомерСчета ;
Судя по картинке, все так.
Но, увы. Пишет ошибку
{Справочник.Контрагенты.Форма.ФормаЭлемента.Форма(355)}: Поле объекта не обнаружено (НомерСчета)
MSRasch = Объект.ОсновнойБанковскийСчет.НомерСчета ;

Вот... это и вводит в недоумение.
Но в этот момент, в объект.ОсновнойБанковскийСчет тип "Справочникссылка.Банковские счета"


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

Re: БП 3.0 Добраться до банков и контактных лиц контрагента
ssa
Автор

Сообщений: 12248
Откуда: Москва
Дата: 14.04.15 12:27:42
Аспид
Вот это и не понятно.
вот картинка
[attachment 21343 ]
казалось бы, и ты так говоришь, обращаться надо
MSRasch = Объект.ОсновнойБанковскийСчет.НомерСчета ;
Судя по картинке, все так.
Но, увы. Пишет ошибку
{Справочник.Контрагенты.Форма.ФормаЭлемента.Форма(355)}: Поле объекта не обнаружено (НомерСчета)
MSRasch = Объект.ОсновнойБанковскийСчет.НомерСчета ;

Вот... это и вводит в недоумение.
Но в этот момент, в объект.ОсновнойБанковскийСчет тип "Справочникссылка.Банковские счета"
Потому, что ты темнишь и не сообщаешь, что все делаешь в управляемой форме. И потому ты лезешь не к самим данным, не к справочнику, а к данным ФОРМЫ, в которых находится не вся информация из справочников. Вот данные тех реквизитов, у которых стоит галочка Использовать всегда, ты получить в модуле формы можешь, а данные реквизитов без этой галочки надо получать отдельно.
Короче, опиши-ка попдробнее и развернутее свою задачу. Как я понял, надо какие-то данные записать на SQL сервер. Это понятно и не надо больше про это повторяться. Теперь про выбранные способы получения нужной инфы и причины выбора именно этих способов. Ибо получение данных через форму это как надевание штанов через голову.


------------------
Лень - это неосознанная мудрость.




Исправлено: ssa, 14.04.15 12:28
Ratings: 0 negative/0 positive

Re: БП 3.0 Добраться до банков и контактных лиц контрагента
Аспид

Сообщений: 3293
Откуда: Москва
Дата: 14.04.15 12:36:59
Если, как оказалось "темню" то , честно, не нарочно)))
Задача в целом.
Надо, что бы при вносе нового контрагента в 1С, он появлялся в БД.
При изменении, изменялся.

Я думал, что юзер работает с формой, и это вполне логично.

А больше и сказать нечего... в силу малых знаний), и понимания предмета)))

Вообще, объектная модель 1С, пока загадка для меня (


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

Re: БП 3.0 Добраться до банков и контактных лиц контрагента
ssa
Автор

Сообщений: 12248
Откуда: Москва
Дата: 14.04.15 12:50:39
Знатца, так.
В форме элемента справочника Контрагенты есть такая процедура:
&НаСервере  
  Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)  
  	  
  	Если ТекущийОбъект.ДополнительныеСвойства.Свойство("ДанныеКонтактногоЛица")  
  		И НЕ ТекущийОбъект.Модифицированность() Тогда  
  		  
  		ДанныеКонтактногоЛица        = Неопределено;  
  		ПредставлениеКонтактногоЛица = Неопределено;  
  		  
  	КонецЕсли;  
  	  
  	УправлениеФормой(ЭтотОбъект);  
  	  
  КонецПроцедуры
Так вот сюда допиши код получения нужных тебе данны и записи их куда надо. Нужный тебе элемент справочника тут фигурирует под именем ТекущийОбъект, к нему и приписывай точки и имена реквизитов. И тут все данные доступны.

Просто в 3.0 реализована другая парадигма работы и построения приложения. С явным делением кода на клиентский и серверный и с разной доступностью данных на этих самых сторонах исполнения кода. В отличие от 2.0, построенной на старой парадигме, сильно схожей с фоксовой - все и вся доступно на клиенте и никакого сервера нет вообще.


------------------
Лень - это неосознанная мудрость.




Исправлено: ssa, 14.04.15 12:54
Ratings: 0 negative/0 positive



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

On-line: 9 (Гостей: 9)

19.06.2019 06:19:10 exec: 0.06
Mem: 1.228 Mb

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