Beispiel #1
0
        protected override async Task OnParametersSetAsync()
        {
            var query = new Uri(uriHelper.Uri).Query;
            var qd    = QueryHelpers.ParseQuery(query);

            if (qd.TryGetValue("id", out var value))
            {
                string docName     = value.ToString();
                var    docMetadata = await service1C77.GetMetadata();

                documentMetadata = docMetadata.Документы[docName];
                string queryString = $"api/v1c77/documents?documentName={documentMetadata.Идентификатор}";
                var    responce    = await Http.GetAsync(queryString);

                if (responce.IsSuccessStatusCode)
                {
                    items = await responce.Content.ReadFromJsonAsync <object[]>();
                }
                else
                {
                    error = true;
                }
            }
            else
            {
                error = true;
            }
        }
Beispiel #2
0
        static DocummentMetadata1C77 GetDocumentMetadata(ICOMObject1C77 com)
        {
            var result = new DocummentMetadata1C77();

            result.Идентификатор = com.GetProperty <string>("Идентификатор");
            result.Комментарий   = com.GetProperty <string>("Комментарий");
            result.Синоним       = com.GetProperty <string>("Синоним");

            result.АвтоНумерация        = com.GetProperty <double>("АвтоНумерация") == 2;
            result.АвтоНумерацияСтрок   = com.GetProperty <double>("АвтоНумерацияСтрок") == 1;
            result.АвтоРегистрация      = com.GetProperty <double>("АвтоРегистрация") == 1;
            result.АвтоудалениеДвижений = com.GetProperty <double>("АвтоудалениеДвижений") == 1;
            result.БухгалтерскийУчет    = com.GetProperty <double>("БухгалтерскийУчет") == 1;
            //var ownerDocumemt = com.GetProperty<ICOMObject1C77>("ВводимыеНаОснованииДокументы");
            //var sb = new List<string>();
            //int count = (int)ownerDocumemt.Method<double>("Реквизит");
            //for (int i = 0;i < count; i++)
            //{
            //   sb.Add(com.Method<ICOMObject1C77>("Реквизит", i + 1).Method<string>("Представление"));
            //}
            //result.ВводимыеНаОснованииДокументы = sb.ToArray();



            result.ДлинаНомера          = com.GetProperty <double>("ДлинаНомера");
            result.ДополнительныеКодыИБ = com.GetProperty <string>("ДополнительныеКодыИБ");
            //result.Журнал = com.GetProperty<string>("Журнал");
            result.КонтрольУникальности = com.GetProperty <double>("КонтрольУникальности") == 1;
            //result.Нумератор = com.GetProperty<string>("Нумератор");
            result.ОбластьРаспространения      = com.GetProperty <string>("ОбластьРаспространения");
            result.ОперативныйУчет             = com.GetProperty <double>("ОперативныйУчет") == 1;
            result.ОснованиеДляЛюбогоДокумента = com.GetProperty <double>("ОснованиеДляЛюбогоДокумента") == 1;
            result.ПериодичностьНомера         = com.GetProperty <string>("ПериодичностьНомера");
            result.азрешитьПроведение          = com.GetProperty <double>("РазрешитьПроведение") == 1;
            result.асчет = com.GetProperty <double>("Расчет") == 1;
            result.едактированиеОпераций = com.GetProperty <double>("РедактированиеОпераций") == 1;
            result.СоздаватьОперацию     = com.GetProperty <string>("СоздаватьОперацию");
            result.ТипНомера             = com.GetProperty <string>("ТипНомера");
            result.еквизитШапки          = new Dictionary <string, AttributeMetadata1C77>();
            int count = (int)com.Method <double>("РеквизитШапки");

            for (int i = 0; i < count; i++)
            {
                var rCOM     = com.Method <ICOMObject1C77>("РеквизитШапки", i + 1);
                var metadata = new AttributeMetadata1C77();
                metadata.Идентификатор = com.GetProperty <string>("Идентификатор");
                metadata.Комментарий   = com.GetProperty <string>("Комментарий");
                metadata.Синоним       = com.GetProperty <string>("Синоним");

                SetAttributeMetadata(rCOM, metadata);
                result.еквизитШапки.Add(metadata.Идентификатор.ToLower(), metadata);
            }

            result.еквизитТабличнойЧасти = new Dictionary <string, DocumentTableAttributeMetadata1C77>();
            count = (int)com.Method <double>("РеквизитТабличнойЧасти");
            for (int i = 0; i < count; i++)
            {
                var metadata = GetDocumentTableAttributeMetadata(com.Method <ICOMObject1C77>("РеквизитТабличнойЧасти", i + 1));
                result.еквизитТабличнойЧасти.Add(metadata.Идентификатор.ToLower(), metadata);
            }


            return(result);
        }