Вопрос

Добрый день!

Хочу получить выборку продуктов где заказ с таким Id -  2136036c-b6d4-4cd9-8c9f-de745ebeb2ab

В системе точно есть такие продукы, но на запрос

https://сайт/0/ServiceModel/EntityDataService.svc/OrderProductCollectio… eq guid'2136036c-b6d4-4cd9-8c9f-de745ebeb2ab'

возвращает -  <message xml:lang="">Элемент коллекции с именем OrderId не найден</message> 

Наверно неправильно построен запрос, что не так? 

У меня такой же вопрос

1 комментарий

Разобрался.

Так надо было обратиться к колонке Order/Id

Войдите или зарегистрируйтесь, чтобы комментировать
Вопрос

Подскажите как можно в C# сделать Serialize в json объект класса

public class ImportCreatioServiceCaseColumns
{
	[JsonPropertyName("idNumber")]
	public string IdNumber { get; set; }
	[JsonPropertyName("typeCase1Name")]
	public string TypeCase0Name { get; set; }
}
public class ImportCreatioProcessCaseColumnsOut
{
	[JsonPropertyName("schemaName")]
	public string BusinessProcessName { get; set; }
	[JsonPropertyName("parameterValues")]
	public ImportCreatioServiceCaseColumns ImportCreatioServiceCaseColumns { get; set; }

}

и привести его к виду 

{
	"schemaName":"KtImportCaseTransferTableInBPMTest",
	"parameterValues":
	[
		{"name":"idNumber","value":"80001019"},
		{"name":"typeCase1Name","value":"Алматы"}
	]
}

?

Это нужно что бы передать body в микровервис для запуска бизнес-процесса с параметрами POST методом.

У меня такой же вопрос

3 комментария

Можно подключитье  Json.NET он уже включен в коробке. Подробнее об использовании смотрите https://www.newtonsoft.com/json

 

Как то так

 

sing System;
using Newtonsoft.Json;
 
namespace JsonPrettyPrint
{
    internal class Program
    {
        private static void Main(string[] args)
        {
            Product product = new Product
                {
                    Name = "Apple",
                    Expiry = new DateTime(2008, 12, 28),
                    Price = 3.99M,
                    Sizes = new[] { "Small", "Medium", "Large" }
                };
 
            string json = JsonConvert.SerializeObject(product, Formatting.Indented);
            Console.WriteLine(json);
 
            Product deserializedProduct = JsonConvert.DeserializeObject<Product>(json);
        }
    }
 
    internal class Product
    {
        public String[] Sizes { get; set; }
        public decimal Price { get; set; }
        public DateTime Expiry { get; set; }
        public string Name { get; set; }
    }
}

 

Не работает так как нужен именно такой формат, уже пробовал как Вы советуете 

Григорий Чех пишет:
{"name":"idNumber","value":"80001019"},

Похожий формат обсуждают тут.

Войдите или зарегистрируйтесь, чтобы комментировать
Вопрос

Сделал пользовательский фильтр, который в зависимости от того какое рабочее место открыто, отображает контрагентов в соответствующих статусах, но при этом не работает дефолтный фильтр. Как это починить?

 

Код

define("AccountSectionV2", [], function() {
	return {
		entitySchemaName: "Account",
		details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
		diff: /**SCHEMA_DIFF*/[]/**SCHEMA_DIFF*/,
		methods: {
			

			getFilters: 	function() {
			
					//	var filters = this.callParent(arguments);
						var filterGroup = new this.Terrasoft.createFilterGroup();
					
				    //	получаем текст названия рабочего места
					 var span = document.getElementById("menu-workplace-button-textEl"); 
        			 var workspacename = span.innerText; 
        			 
        			// var wsname = this.get("SysWorkplace.Name");
        			 //alert(wsname);
    	      		 if (workspacename==="Compliance")

						{
                        var category = "Compliance";
                        filterGroup.add("FilterCategory", this.Terrasoft.createColumnFilterWithParameter(
                                    this.Terrasoft.ComparisonType.EQUAL, "elcOnBoardingClientSts.Name", category));
                        return filterGroup;
						}
						
						else	if (workspacename==="Board")

						{
                        var categoryBoard = "Board";
                        filterGroup.add("FilterCategory", this.Terrasoft.createColumnFilterWithParameter(
                                    this.Terrasoft.ComparisonType.EQUAL, "elcOnBoardingClientSts.Name", categoryBoard));
                        return filterGroup;
						}
						
						
						else	if (workspacename==="Compliance Officer")

						{

                        var categoryComplianceOfficer = "Compliance";
                       // filterGroup.logicalOperation = Terrasoft.LogicalOperatorType.and;
                        filterGroup.add("FilterStatus", this.Terrasoft.createColumnFilterWithParameter(
                    this.Terrasoft.ComparisonType.EQUAL, "elcOnBoardingClientSts.Name", categoryComplianceOfficer));
                    	filterGroup.add("FilterOfacRate", this.Terrasoft.createColumnFilterWithParameter(
                           this.Terrasoft.ComparisonType.NOT_EQUAL, "elcOfacRate", "0"));
                        return filterGroup;
						}
						
						else	if (workspacename==="Lawyers")
						
						{
						var categoryLawyers = "Compliance";
						var TermsAndCond = "0";
                       // filterGroup.logicalOperation = Terrasoft.LogicalOperatorType.and;
                        filterGroup.add("FilterStatus", this.Terrasoft.createColumnFilterWithParameter(
                    		this.Terrasoft.ComparisonType.EQUAL, "elcOnBoardingClientSts.Name", categoryLawyers));
                    	filterGroup.add("FilterConfirm", this.Terrasoft.createColumnFilterWithParameter(
                           this.Terrasoft.ComparisonType.EQUAL, "elcLawyersConfirmTermsAndCond", TermsAndCond));
                        return filterGroup;
						}
						
						/*
						else {
                            var categoryCreated = "Created";
							filterGroup.remove("FilterCategory", this.Terrasoft.createColumnFilterWithParameter(
                                this.Terrasoft.ComparisonType.EQUAL, "elcOnBoardingClientSts.Name", categoryCreated));
							return filterGroup;
						}
					
						return;
						*/
                    }

			
		}
	};
});

 

У меня такой же вопрос

4 комментария

А как он может работать если вы возвращаете filterGroup а filters у вас улетает в никуда по логике вы должны добавить в filters вашу filterGroup и вернуть filters

Григорий Чех,

Можно, пожалуйста, на примере? Я еще тот программист.

filters.add("filterGroup", filterGroup);
return filters;

Григорий Чех,

Да, так работает. Спасибо

Войдите или зарегистрируйтесь, чтобы комментировать
Вопрос

Добрый день!

Подскажите, как на странице детали отобразить данные из другой таблицы? На станице детали в виде списка отображаются данные из Table1, необходимо отобразить данные из Table2. Таблицы связаны между собой полем идентификатора Table1.idTable2 = Table2.id. Как это сделать без создания VIEW в базе данных?

У меня такой же вопрос

2 комментария

Добрый день.

Для отображения в реестре полей из связанной таблицы Вам нужно выполнить настройку связанных колонок в реестре.

В Вашей версии такую настройку можно выполнить для детали с нередактируемым реестром. Для детали с редактируемым реестром такую настройку можно выполнить с версии 7.14.2. Поэтому задумайтесь над обновлением)

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

Попробуйте добавить в Table1 поле Table2  в котором будет idTable2  и укахать в настройке колонок  Table2.Namr и тд

 

Войдите или зарегистрируйтесь, чтобы комментировать
Вопрос

Вопрос: корректно ли поведения очередей

Стартовые условия:

  1. Настроена очередь на следующие состояния обращения: 2, 3, 4 ,5.
  2. Обращение попало в очередь с состоянием 2. В результате элемент очереди получил состояние "Не обработан"

Шаг1. Если на домашней странице (или в разделе "очереди") открыть по кнопке "Открыть" данное обращение, то состояние элемента очереди изменится с "Не обработан" в "В работе", а состояние обращения останется с №2.

Шаг2. Пользователь в рамках работы с элементом очереди переводит обращение в состояние 2->3->4->5->6. В результате состояние элемента очереди изменится с "В работе" на "Отработан".

НО

Если открыть карточку "Обращение", например из раздела "Обращения", то состояние элемента очереди не изменится, и в случае перевода Обращения в состояние 6. Элемент очереди не будет исключен из очереди, из-за не выполнения фильтра (состояние элемента очереди будет по-прежнему "Не обработан", а состояние обращения равно "6")

Так и должно быть?

У меня такой же вопрос

0 комментариев
Войдите или зарегистрируйтесь, чтобы комментировать