Сорокин Сергей | Ведущий программист 1С | МоскоуСофт

«Трейдинг криптовалют и его автоматизация на 1С»

1. Инвестирование в фондовый рынок или в криптовалюты. * Стоит ли инвестировать и как не потерять свои вложения? * В чем отличие операций на фондовом рынке и операций с криптовалютами? * Криптовалюты – это пузырь или нет? 2. Что такое трейдинг и почему Вам, возможно, не надо им заниматься? * Невозможно доказать или опровергнуть существование формализованных правил совершения сделок, которые долгосрочно могут приносить прибыль. * Информационный шум, который провоцирует вас на принятие азартных решений вместо следования своей торговой стратегии. 3. Особенности трейдинга криптовалют. * Возможно, лучшей работающей стратегией является Buy&Hold, но нужно быть готовым к тому, что ждать придется годы. * Есть риск банкротства самой криптовалютной биржи. 4. Автоматизация трейдинга на 1С * Какие ограничения платформы 1С нужно учитывать при разработке торгового робота? * Какие преимущества платформы 1С позволяют реализовывать свои идеи быстро и создавать надежное ПО? 5. Необходимый функционал программы-робота на примере нашей разработки «Криптобот» * Встроенная защита от принятия эмоциональных, необдуманных решений * Конструктор стратегии в пользовательском режиме. * Тестирование на исторических данных. * Широкий спектр поддерживаемых стратегий. * Расширение функционала через добавление своих параметров и удобное добавление новых бирж.

Ошибка "Поле объекта недоступно для записи"

1. MrIgorr 12.10.17 18:01 Сейчас в теме
Добрый день, уважаемые форумчане.

Пустая конфигурация. Создал "Документ", "Форму документа".
Затем программно пытаюсь создать на форме таблицу значений:

&НаСервере
Процедура создатьтз(индекс)
	// добавить реквизиты в форму
	МассивДобавляемыхРеквизитов = Новый Массив; 
	МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("План"+индекс, Новый ОписаниеТипов("ТаблицаЗначений"))); 
	
	//добавить колонки таблицы, например будем добавлять три колонки:
	МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("Номенклатура", Новый ОписаниеТипов("Строка"),"План"+индекс)); 
	МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("Регион", Новый ОписаниеТипов("Число",Новый КвалификаторыЧисла(10,2)),"План"+индекс)); 
	МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("Разница", Новый ОписаниеТипов("Число",Новый КвалификаторыЧисла(10,2)),"План"+индекс)); 
	
	//можно вызывать изменение реквизитов:
	ИзменитьРеквизиты(МассивДобавляемыхРеквизитов); 
	
	//Можно приступать к созданию элементов формы, для отображения данных. Сначала создадим элемент формы типа ТаблицаФормы.
	ТаблицаФормы = Элементы.Добавить("План"+индекс, Тип("ТаблицаФормы")); 
	ТаблицаФормы.ПутьКДанным = "План"+индекс; 
	ТаблицаФормы.ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиЭлементаФормы.Нет; 
	ТаблицаФормы.ФиксацияСлева = 3; 
	ТаблицаФормы.УстановитьДействие("ПередУдалением", "ПланПередУдалением"); 
	ТаблицаФормы.УстановитьДействие("ПередНачаломДобавления", "ПланПередНачаломДобавления");
	ТаблицаФормы.ВариантУправленияВысотой = ВариантУправленияВысотойТаблицы.ПоСодержимому;
	
	//После создания элемента План типа ТаблицаФормы создадим подчиненные ему элементы типа ПолеФормы, которые будут отвечать у нас за вывод данных в колонки таблицы. 
	к=1;
	Для каждого колонка Из МассивДобавляемыхРеквизитов Цикл
		Если к=1 Тогда
		    к=0;
		    продолжить;
		КонецЕсли; 
		НоваяКолонка = Элементы.Добавить("План"+индекс+""+колонка.Имя, Тип("ПолеФормы"), Элементы["План"+индекс]); 
		НоваяКолонка.ПутьКДанным = "План"+индекс + "." + колонка.Имя; 
		НоваяКолонка.Вид = ВидПоляФормы.ПолеВвода; 
		
	КонецЦикла; 

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

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	Для у=1 По 10 Цикл
	
		создатьтз(у);	
	    у=у+1;
	КонецЦикла; 
	
	
КонецПроцедуры
Показать


На строке

ТаблицаФормы.ВариантУправленияВысотой = ВариантУправленияВысотойТаблицы.ПоСодержимому;


Получаю ошибку:
"Поле объекта недоступно для записи (ВариантУправленияВысотой)"

В хелпе посмотрел:
Интерфейс (управляемый) - Таблица формы - Таблица формы - свойства

ТаблицаФормы (FormTable)
ВариантУправленияВысотой (HeightControlVariant)
Использование:

Чтение и запись.
Описание:

Тип: ВариантУправленияВысотойТаблицы.
Содержит варианты управления высотой таблицы.

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, мобильное приложение(клиент), мобильное приложение(сервер).


В чем ошибка? Что я делаю не так?
Ответы
Сортировка: Древо
2. Armando 1385 12.10.17 19:48 Сейчас в теме
Если реквизит формы был добавлен программно, то обращаться к нему надо через ЭтотОбъект
3. Armando 1385 12.10.17 22:45 Сейчас в теме
После добавления реквизита обращение к нему в программном коде возможно только с помощью конструкции ЭтотОбъект.ИмяРеквизита. Выражение «ЭтотОбъект.» является обязательным для программно добавляемых реквизитов.

https://its.1c.ru/db/v83doc#bookmark:dev:TI000000444
Оставьте свое сообщение

Вакансии

Бизнес-аналитик 1С
Санкт-Петербург
зарплата от 80 000 руб. до 100 000 руб.
Полный день

Руководитель проектов по внедрению 1С документооборота
Санкт-Петербург
зарплата от 100 000 руб. до 130 000 руб.
Полный день

Руководитель по сопровождению и внедрению 1С
Санкт-Петербург
зарплата от 100 000 руб. до 120 000 руб.
Полный день

Программист 1С
Санкт-Петербург
Полный день

Ведущий специалист 1С
Москва
Полный день