نحوه راه اندازی گوشی های هوشمند و رایانه های شخصی. پرتال اطلاعاتی
  • خانه
  • سیستم های عامل
  • کار برنامه با جدول مقادیر 1s. چه روش هایی وجود دارد و چگونه می توان چندین مقدار را همزمان جستجو کرد

کار برنامه با جدول مقادیر 1s. چه روش هایی وجود دارد و چگونه می توان چندین مقدار را همزمان جستجو کرد

درود به همه خوانندگان اینفوستارت. این مقاله به موضوع ایجاد جدول دلخواه مقادیر در فرم برنامه مدیریت شده به صورت برنامه ای اختصاص داده خواهد شد.

ویژگی های وظیفه

همه کسانی که در یک برنامه معمولی برنامه نویسی می کردند اغلب با وظیفه دریافت جدول دلخواه مقادیر در یک فرم مواجه می شدند. یک جدول دلخواه مقادیر به عنوان جدولی درک می شود که تعداد و نوع ستون های آن از قبل مشخص نیست. یعنی ممکن است 3 ستون یا شاید 6 یا شاید 8 ستون وجود داشته باشد. در یک برنامه معمولی، همه چیز ساده است: می توانید عنصر "Value Table" را در فرم پردازش قرار دهید و سپس جدول مقادیر ایجاد شده را به صورت برنامه نویسی منتقل کنید. به این عنصر. سپس با یک دستور ساده:

FormElements.TableField.CreateColumns();

برای دریافت جدول آماده مقادیر در فرم. به نظر می رسد که می تواند راحت تر باشد.

این همه در یک برنامه معمولی بود. همه چیز در یک برنامه مدیریت شده تغییر کرده است. بنابراین فقط یک جدول دلخواه نمی تواند ایجاد شود. اکنون باید جدول مقادیر را در فرم به طور دقیق پارامتر کنید یا آن را به صورت برنامه نویسی ایجاد کنید (برای توصیف، خوب، این در واقع جوهر خود برنامه مدیریت شده است). این همان کاری است که ما سعی خواهیم کرد انجام دهیم: به صورت برنامه ریزی شده یک جدول دلخواه از مقادیر را در یک فرم مدیریت شده ایجاد کنید.

راه حل مشکل.

اولین کاری که باید انجام دهیم این است که مشخص کنیم جدول چگونه روی فرم ظاهر می شود. نکته اصلی این است که شما نیازی به ایجاد هیچ عنصر فرمی در پردازش ندارید. ما آن را به صورت برنامه نویسی، مانند کل جدول ایجاد خواهیم کرد. یعنی جدول توضیح داده می شود و در زمان باز کردن فرم یا با کمک یک دکمه ایجاد می شود - اینگونه به آن نیاز دارید.

ایجاد جدول در فرم از طریق توصیف جدول مقادیر به عنوان یک ویژگی رخ می دهد:
ArrayChoiceType = آرایه جدید; ArrayChoiceType.Add(Type("ValueTable")); ChoiceTypeDescription = New ChoiceTypeDescription(ChoiceTypeArray); ArrayAttributes = آرایه جدید; ArrayAttributes.Add(New FormAttribute("ScheduleTable"، ChoiceTypeDescription، ""، "TRN")); حال باید یک جدول مقادیر برنامه‌نویسی ایجاد کنیم که حاوی داده‌ها باشد. اگر جدول مقادیر از یک پرس و جو بدست آید، همه چیز کم و بیش مرتب است. اگر جدول به صورت دستی ایجاد شده باشد، می توان مقدار ستون هایی را که حاوی اعداد یا تاریخ هستند از طریق "توضیح انواع" ایجاد کرد. نکته اصلی این است که ستون‌های جدول مقدار باید دارای نوعی باشند. به عنوان مثال، اگر فرض شود که کاربر داده‌های این ستون‌ها را به صورت تعاملی پر می‌کند، نمی‌توانید یک ستون جدول ارزش با یک نام ساده اضافه کنید، باید یک نوع داشته باشد. به خاطر داشته باشید - این بسیار مهم است. ما این انواع را به جدول روی فرم منتقل می کنیم.
جدولی ایجاد کنید که شامل چندین ستون باشد:
CD = New DateQualifiers (DateParts.Time); ArrayCD = آرایه جدید; ArrayKD.Add(Type("تاریخ")); TypeDescriptionTime = New TypeDescription(ArrayKD,KD); TK = New ValueTable;
TK.Columns.Add("از"، TypeDescriptionTime);
TK.Columns.Add("قبل"، TypeDescriptionTime);
TK.Columns.Add("Name");
TK.Columns.Add("Note");//Name and Note - strings سپس، جدول برنامه TK خود را با داده های لازم پر می کنیم. یک جدول TK دریافت می کنیم که حاوی مقادیر لازم است و آماده انتقال به ویژگی فرم ایجاد شده است. برای هر ستون از حلقه TK.Column

ArrayAttributes.Add(New FormAttribute(Column.Name, Column.ValueType,"ScheduleTable"));
چرخه پایان
ChangeAttributes (ArrayAttributes)؛
SelectionFieldTable = Elements.Add("TZN", Type("FormTable"));
SelectionFieldTable.DataPath = "ScheduleTable";
SelectionFieldTable.Display = DisplayTable.List;

در اینجا یک ترکیب ساده وجود دارد و میز ما آماده است.

برای هر ستون از حلقه TK.Column

NewElement = Elements.Add(Column.Name, Type("FormField"), ChoiceFieldTable);
NewItem.View = FormFieldView.InputField;
NewItem.DataPath = "ScheduleTable." + Column.Name;
NewElement.Width = 10;
چرخه پایان

طراحی مشروط، در صورت نیاز ما نیز به صورت دستی، منوی فرمان را می نویسیم - به صورت دستی. دسته های جدول نیز با دست نوشته می شوند. به عنوان مثال، برای اضافه کردن یک کنترل کننده رویداد برای جدول "انتخاب":

ChoiceFieldTable.SetAction("Choice"،"TCChoice");

برای رسیدگی به این رویداد در قالب یک رویه، یک رویه جداگانه نوشته شده است:

&AtClient
رویه TSNSelect(TK، SelectedRow، Field، StandardProcessing)
//دستورالعمل دستورات EndProcedure

توجه داشته باشید که کنترل کننده های جدول روی کلاینت شلیک می کنند و بنابراین باید یک دستور اشاره گر کامپایلر داشته باشند

&AtClient

خوب، آخرین چیزی که می خواستم اضافه کنم این است که بعد از همه این اقدامات، نباید فراموش کنیم که جدول تمام شده را به ویژگی form منتقل کنیم:

ValueVFormAttribute (TK، "جدول زمانبندی");

این چیزی است که ما در نتیجه داریم:


و در اینجا نحوه رسیدگی به رویداد "انتخاب" است:



پس گفتار

امیدوارم این مقاله به برنامه نویسان 1C که شروع به ایجاد جداول روی فرم به صورت برنامه ریزی کرده اند کمک کند.

می‌توانید پردازشی را دانلود کنید که به‌صورت برنامه‌ریزی جدولی از مقادیر و خروجی‌ها را در یک فرم مدیریت شده با نظراتی که به شما در ایجاد جداول کمک می‌کند، دانلود کنید.

در جدول مقادیر 1C جستجو کنید

چه روش هایی وجود دارد و چگونه می توان چندین مقدار را همزمان جستجو کرد.

دو روش ویژه برای جستجوی جدول مقادیر وجود دارد:

1. پیدا کنید

TVHorizon = Directories.Nomenclature.FindBy Name("Horizon TV");
FoundString = TZNomenclature.Find(TVHorizon);
//همچنین می توانیم تعیین کنیم که در کدام ستون ها جستجو کنیم تا سرعت جستجو افزایش یابد
FoundString = TKNomenclature.Find(TVHorizon, "Nomenclature");

این متد اولین رشته یافت شده را با مقداری که به دنبال آن هستید یا Undefined را اگر آن را پیدا نکرد، برمی گرداند. بنابراین، استفاده از آن برای جستجوی مقادیر منحصر به فرد راحت است، زیرا در غیر این صورت، هنگام یافتن یک مقدار، باید آن را از جدول حذف کنید تا مقدار بعدی را بیابید.

برای اینکه اینگونه رنج نبرید، روش زیر وجود دارد که به شما امکان می دهد آرایه ای از رشته های مناسب را پیدا کنید:

2. FindStrings


Selection Structure.Insert("Nomenclature", TVHorizon); // ابتدا ستونی را مشخص می کنیم که کجا جستجو کنیم و سپس چه چیزی را جستجو کنیم.

این متد همیشه یک آرایه را برمی گرداند، اما اگر چیزی پیدا نشد، می تواند خالی باشد. و این روش، مانند روش قبلی، ردیف های جدول مقادیر را خودشان برمی گرداند، نه خود مقادیر را در یک آرایه جداگانه. بنابراین، با تغییر مقادیر در خط آرایه یا مانند روش قبلی، برای خط یافت شده، مقدار جدول مقادیر پردازش شده را تغییر می دهید.

چیز دیگری که در مورد این روش خوب است این است که می تواند چندین ستون جدول مقدار را به طور همزمان جستجو کند:


SelectionStructure = ساختار جدید;
Selection Structure.Insert("Nomenclature", TVHorizon);
Selection Structure.Insert("Quantity", 10);
FoundStringArray = TKNomenclature.FindStrings(SelectionStructure);

تنها نکته منفی، همانطور که می بینید، نمی توانید از انواع دیگر مقایسه غیر از "برابر" استفاده کنید.

در اینجا یک واقعیت کوچک برای شروع وجود دارد - نمونه های ساده کار با جدول مقادیر:

1. جدولی از مقادیر ایجاد کنید

ValueTable = New ValueTable;


2. ستون هایی از جدول مقادیر ایجاد کنید:

ValueTable.Columns.Add("Name");
ValueTable.Columns.Add("نام خانوادگی");


3. سطرهای جدید را با استفاده از نام ستون اضافه کنید:


NewString.Name = "واسیلی";
NewRow.LastName = "Pupkin";


4. نحوه جستجوی یک مقدار در جدول مقدار:
لازم است یک ردیف جدول حاوی مقدار مورد نظر پیدا کنید.

FoundString = ValueTable.Find(LookupValue);


5. اولین رخداد را در ستون های خاصی از جدول مقادیر بیابید

FoundString = ValueTable.Find(LookupValue, "Supplier, Buyer");


6. اگر می خواهید همه رخدادها را در جدول مقادیر پیدا کنید:
ما از ساختار جستجو استفاده می کنیم.

SearchStructure = Structure("Employee", LookupValue);
ArrayFoundStrings = ValueTable.FindStrings(SearchStructure);


بیایید یک ساختار جستجو ایجاد کنیم که هر عنصر آن شامل نام ستون به عنوان یک کلید و مقدار جستجو شده در این ستون به عنوان یک مقدار باشد. ساختار جستجو را به عنوان پارامتر به متد FindStrings() می دهیم. در نتیجه، ردیف های جدول را به دست می آوریم.
اگر جستجوی مقدار مورد نظر را به ساختار جستجو اضافه کنیم، مثلاً در ستون Responsible، در نتیجه اعمال متد FindRows()، تمام سطرهایی را به دست خواهیم آورد که هر دو کارمند و Responsible با مقدار مورد نظر برابر هستند. مقدار.

7. نحوه حلقه زدن جدول مقادیر به ترتیب تصادفی

برای هر CurrentRow از حلقه ValueTable
گزارش (CurrentLine.Name);
چرخه پایان

همین کار را با استفاده از شاخص ها انجام دهید:

SeniorIndex = ValueTable.Count() - 1;
برای MF = 0 توسط چرخه SeniorIndex
گزارش(ValueTable[Count].Name);
چرخه پایان


8. حذف یک ردیف جدول مقادیر موجود

ValueTable.Delete(RemoveRow);

بر اساس شاخص

ValueTable.Delete(0);


9. حذف یک ستون موجود از جدول مقادیر

ValueTable.Columns.Delete(RemoveColumn);


بر اساس شاخص

ValueTable.Columns.Delete(0);

باید در نظر داشت که حذف یک ردیف (یا ستون) "از وسط" جدول مقادیر منجر به کاهش یکی از شاخص های ردیف هایی می شود که "پس از" حذف شده اند.

10. اگر نام ستون ها در متغیرها وجود دارد، چگونه می توان جدول مقادیر را پر کرد؟

NewRow = ValueTable.Add();
NewRow[ColumnName] = مقدار;


11. چگونه کل ستون جدول مقادیر را با مقدار مورد نظر پر کنیم؟
ستون FiscalAccounting Flag در جدول ارزش جدول ارزش باید با مقدار نادرست پر شود.

ValueTable.FillValue(False، "Fscal Accounting Flag");


ما از متد FillValues() برای جدول مقادیر استفاده می کنیم. اولین پارامتر مقداری است که باید پر شود. پارامتر دوم نام ستون پر شده است.

12. چگونه جدول مقادیر "TableRecipient" را با داده های جدول مقادیر "SourceTable" پر کنیم؟

اگر جدول گیرنده در زمان عملیات هنوز وجود ندارد یا نیازی به ذخیره ستون های قبلی آن نیست، می توانید آن را به عنوان یک کپی کامل از نسخه اصلی ایجاد کنید.

TableReceiver = TableOriginal.Copy();


گزینه دو: جدول TableReceiver وجود دارد و حیف است که ستون‌ها و محدودیت‌های مربوط به انواع داده‌های ستون را از دست بدهیم. اما باید داده های ستون هایی را که نام آنها با نام جدول منبع مطابقت دارد پر کنید.

انتقال جزئی داده برای ستون هایی با نام های منطبق:

برای هر ردیف از SourceTable از SourceTable Loop
FillPropertyValues ​​(NewString، SourceTableString);
چرخه پایانی


برای هر ردیف از جدول مبدا، یک ردیف جدید به جدول مقصد اضافه می شود و مقادیر در آن ستون های جدول جدید که نام آنها با نام ستون های جدول مبدا مطابقت دارد، پر می شود.

اگر جدول‌ها ستون‌هایی با نام مشابه نداشته باشند، جدول مقصد به تعداد ردیف‌هایی که در جدول مبدا وجود داشت، با مقادیر تهی به پایان می‌رسد.
اگر برای برخی از ستون‌های همنام، نوع مقدار داده از جدول مبدا در آرایه انواع مجاز ستون جدول مقصد قرار نگیرد، مقادیر خالی در چنین فیلدهایی دریافت خواهیم کرد.
بیایید مورد سوم را در نظر بگیریم. در مورد ستون هایی با همین نام، ستون جدول مقصد باید با ستون جدول مبدا مطابقت کامل داشته باشد.

کپی کامل داده ها برای ستون هایی با نام های منطبق

SimilarColumns = New Array();

برای هر ستون از SourceTable.Columns حلقه
MatchingColumn = TableReceiver.Columns.Find(Column.Name);

اگر MatchedColumn<>تعریف نشده سپس

// ویژگی های ستون را دریافت کنید.
نام = Column.Name;
ValueType = Column.ValueType;
عنوان = Column.Title;
Width = Column.Width;

// ستون ها را در جدول مقصد جایگزین کنید.
Index = TableReceiver.Columns.Index(CoincidentColumn);

TableReceiver.Columns.Delete(Index);
TableReceiver.Columns.Insert(Index, Name, ValueType, Title, Width);

// نام بعدی ستون های منطبق را به آرایه اضافه کنید.
Same-nameColumns.Add(Column.Name);

EndIf

چرخه پایان

// در ردیف های جدول منبع حلقه بزنید.
برای هر ردیف از SourceTable از SourceTable Loop

// یک ردیف جدید به جدول مقصد اضافه کنید.
NewString = TableReceiver.Add();

// مقادیر را در سلول های منطبق پر کنید.
برای هر NameColumns Of Same NameColumns حلقه
NewString[ColumnName] = SourceTableString[ColumnName];

چرخه پایان

چرخه پایان


باید ستونی را در جدول مقصد با ستون جدیدی جایگزین کنیم که ویژگی های آن کاملاً با ستون جدول مبدا مطابقت داشته باشد.
بنابراین، اگر ستونی به همین نام در جدول گیرنده یافت شود، تمام ویژگی های ستون جدید را در متغیرها جمع آوری می کنیم. بعد، قدیمی را حذف کنید و یک ستون جدید ایجاد کنید. سپس در ردیف های جدول منبع حلقه می زنیم.
در حلقه، یک ردیف جدید به جدول گیرنده اضافه می کنیم و یک حلقه از طریق نام ستون ها در آرایه ستون های منطبق باز می کنیم.
در داخل این حلقه تو در تو، سلول های جدول گیرنده را با داده های سلول جدول منبع پر می کنیم.

13. چگونه می توان ستون هایی را به جدول مقادیر "جدول مقادیر" با محدودیت نوع اضافه کرد؟

هنگام اضافه کردن یک ستون، می توانید به سادگی نام آن را مشخص کنید و پارامتر دوم متد Add() را لمس نکنید. در این حالت نوع داده ستون دلخواه است.

اضافه کردن یک ستون بدون تعیین نوع داده

// یک ستون بدون محدودیت نوع اضافه کنید.
ValueTable.Columns.Add("Object");


می توانید مقدار پارامتر دوم را پر کنید. لازم است شرحی از نوع مجاز برای ستون در آنجا ارسال شود. خود توضیحات را می توان با استفاده از سازنده، ارسال نام رشته نوع به عنوان پارامتر (اگر انواع زیادی وجود دارد، سپس با کاما از هم جدا شوند) یا آرایه ای از انواع معتبر به دست آمد.

افزودن ستونی که نوع داده را مشخص می کند

// محدودیت در انواع داده های ستونی:
// فقط عناصر دایرکتوری "Contractors".
ValueTable.Columns.Add("Account", New TypeDescription("ReferenceReference.Accounts"));


اگر رشته ای در بین انواع مجاز برای پر کردن داده های ستون وجود دارد، می توانید عمق بیت (طول) آن را محدود کنید، استفاده از یک متغیر یا طول ثابت را مشخص کنید. همه اینها با ایجاد یک شی با استفاده از سازنده StringQualifiers ارائه می شود. علاوه بر این، این شی به عنوان یکی از پارامترهای سازنده TypeDescription استفاده خواهد شد.

استفاده از واجد شرایط برای تعیین نوع داده ستون جدول مقدار

// تهیه و تنظیم محدودیت برای داده های نوع رشته.
String Qualifiers = New String Qualifiers(20, ValidLength.Variable);
AllowedTypes = NewTypeDescription("String",StringQualifiers);
ValueTable.Columns.Add("NoteStringShort", ValidTypes);


شما می توانید همین کار را برای واجد شرایط شماره و تاریخ انجام دهید.
لطفاً توجه داشته باشید: توصیف نوع می تواند توسط سازنده هم "از ابتدا" ساخته شود و هم می توانید از یک توصیف نوع موجود به عنوان پایه استفاده کنید.

استفاده از اعلان‌های نوع موجود برای تعیین نوع داده ستون‌های جدول مقادیر

// بسط شرح انواع استفاده شده قبلی.
Number Qualifiers = New Number Qualifiers(10, 2, ValidSign.Non-negative);
DateQualifiers = New DateQualifiers(DateParts.Date);
ExtendedValidTypes = NewTypeDescription(ValidTypes, "Number, Date",NumberQualifiers,DateQualifiers);

ValueTable.Columns.Add("Note", ExtendedAllowedTypes);

جدول ارزش در پلت فرم 1C 8.3 (8.2) مجموعه ای جهانی از مقادیر است که یک توسعه دهنده می تواند در توسعه نرم افزار برای پیاده سازی الگوریتم های خود استفاده کند. در واقع، جدول ارزش 1C مجموعه ای پویا از مقادیر است که دارای ستون و ستون است.

مقالاتی در مورد سایر مجموعه های جهانی ارزش ها در 1C

آموزش برنامه نویسی در 1C در مکانی از کتاب من "برنامه در 1C در 11 مرحله"

  1. این کتاب به زبانی واضح و ساده - برای یک مبتدی - نوشته شده است.
  2. یادگیری درک معماری 1C؛
  3. شما شروع به نوشتن کد به زبان 1C خواهید کرد.
  4. تسلط بر تکنیک های اساسی برنامه نویسی؛
  5. دانش کسب شده را با کمک کتاب کار تثبیت کنید.

یک راهنمای عالی برای توسعه در یک برنامه مدیریت شده 1C، هم برای توسعه دهندگان تازه کار و هم برای برنامه نویسان با تجربه.

  1. زبان بسیار در دسترس و قابل فهم
  2. کتاب در قالب پی دی اف از طریق ایمیل ارسال می شود. در هر دستگاهی قابل باز شدن است!
  3. ایدئولوژی یک برنامه مدیریت شده 1C را درک کنید
  4. یاد بگیرید که چگونه یک برنامه مدیریت شده توسعه دهید.
  5. آموزش توسعه فرم های مدیریت شده 1C.
  6. شما قادر خواهید بود با عناصر اولیه و ضروری فرم های مدیریت شده کار کنید
  7. برنامه نویسی تحت یک برنامه مدیریت شده روشن می شود

کد تبلیغاتی برای 15٪ تخفیف - 48PVXHeYu


اگر این درس به شما کمک کرد مشکلی را حل کنید، آن را دوست داشتید یا مفید بود، می توانید با انتقال هر مبلغی از پروژه من حمایت کنید:

می توان به صورت دستی پرداخت کرد:

Yandex.Money — 410012882996301
وب مانی - R955262494655

به گروه های من بپیوندید

جدول مقدار یک شیء عمومی خاص است که برای ذخیره داده ها در نمای جدول طراحی شده است. تفاوت اصلی جدول و اشیاء برنامه در این است که به جداول پایگاه داده فیزیکی مرتبط نیست. جدول مقادیر فقط در RAM وجود دارد که از یک طرف فرصت های منحصر به فردی را فراهم می کند و از طرف دیگر محدودیت های خاصی را اعمال می کند. با این وجود، امکان تعامل با یک جدول با تعامل با اشیایی که واقعاً در پایگاه داده وجود دارند قابل مقایسه است.

از لحاظ تاریخی، جدول مقادیر در 1C دارای هدف دوگانه است، آنالوگ مجازی جداول موجود، اما در عین حال - و یک عنصر کنترل. با انتقال به یک برنامه مدیریت شده، بیشتر این قابلیت منسوخ شده است، اما حتی در حال حاضر نیز می تواند یک عنصر رابط کاربری باشد، اما با تعدادی محدودیت قابل توجه.

ساختار جدول مقادیر به عنوان یک شی

خصوصیات یک جدول مقدار با ترکیب دو مجموعه از پیش تعریف شده تعریف می شود: ستون ها و ردیف های آن.

جدول مقادیر ستون ها

ستون جدول ارزش، ویژگی تعیین کننده آن است. مجموعه ای از ستون ها در یک جدول است که ساختار آن را تعیین می کند. ستون‌ها با فیلدهای جداول فیزیکی یا ستون‌های آشنا از رابط کاربری یک بخش جدولی یا یک گزارش سند مطابقت دارند. یک ستون می تواند یک نام داخلی، یک نوع مقدار و یک هدر داشته باشد که هنگام تعامل با جدول نمایش داده می شود.

از آنجایی که ستون ها مجموعه ای از اشیاء هستند، می توانید ستون ها را اضافه، حذف و ویرایش کنید.

ردیف جدول ارزش

از نقطه نظر رابط برنامه، رشته ها مجموعه جداگانه ای هستند که در جدول مقادیر جاسازی شده اند. آنها مشابه رکوردهای جداول فیزیکی هستند، یعنی ردیف های یک بخش جدولی یا یک مجله از اسنادی که برای کاربر آشنا هستند. هر سطر منفرد یک شی با مجموعه ای از ویژگی های نامگذاری شده است که نام آنها با نام ستون های جدول مطابقت دارد.

بنابراین، تعامل با یک رشته بسیار شبیه به تعامل با اشیاء دیگر است. می توانید ویژگی های آن را بخوانید و بنویسید، از جمله با استفاده از تابع از پیش تعریف شده "FillPropertyValues()". از آنجایی که سطرها مجموعه اصلی جدول مقادیر هستند، از روش "Clear()" برای حذف تمام سطرهای جدول استفاده می شود.

جدول مقادیر را ایجاد کنید

راه های زیادی برای آماده کردن جدول مقادیر برای استفاده وجود دارد. بیایید برخی از آنها را در نظر بگیریم. هر نمونه به صورت فهرست کد همراه با نظرات ارائه خواهد شد.

ایجاد جدول با سازنده

متأسفانه متأسفانه، روش اصلی که به شما امکان می دهد دقیقاً همان جدولی را ایجاد کنید که توسعه دهنده به آن نیاز دارد، زمان برترین است، زیرا از شما می خواهد که به صورت دستی تمام ویژگی های لازم جدول را مشخص کنید.

DemoTable = New ValueTable; // اول از همه TK را مقداردهی اولیه می کنیم // سپس پارامترهای لازم برای ستون های جدید را تعریف کرده و به مجموعه اضافه می کنیم // Creating the "Nomenclature" column Name = "Nomenclature"; ValueType = New TypeDescription("ReferenceReference.Nomenclature"); عنوان = "نامگذاری (مورد)"; DemoTable.Columns.Add(Name, ValueType, Title); // ایجاد ستون "Amount" Name = "Amount"; ValueType = NewTypeDescription("Number"); DemoTable.Columns.Add(Name, ValueType); // در نتیجه این دستکاری ها، ما یک جدول خالی با ستون های تایپ شده ایجاد کرده ایم // اگر نیاز به تایپ دقیق تری از انواع اولیه دارید، باید از نحو توسعه یافته سازنده "TypeDescription" استفاده کنید.

ایجاد جدول با کپی کردن

اگر مرجعی با ساختار و/یا ترکیب مناسب در دست دارید، می توانید جدول مرجع مقادیر را کپی یا دانلود کنید. اگر مرجع جدول دیگری است، پس باید از روش "Copy the reference table" استفاده کنید. اگر با یک بخش جدولی یا مجموعه ای از رکوردهای رجیستر سروکار دارید، باید از روش "Unload جدول مقادیر" استفاده کنید. اگر فقط به ساختار نیاز دارید، می توانید از روش "CopyColumns" استفاده کنید.

// گونه‌ای با کپی کردن تمام ردیف‌ها از استاندارد TK اما با ذخیره تنها دو ستون مشخص شده Reference Columns = "Nomenclature, Quantity"; DemoTable = TableReference.Copy(, ColumnsReference); // نوع با کپی کردن ردیف های انتخاب شده اولیه از استاندارد TK، در حالی که دو ستون مشخص شده را حفظ می کند. ستون های مرجع = "نامگذاری، کمیت"; DemoTable = TableReference.Copy(RowsReference, ColumnsReference); // گزینه ای با کپی کردن ردیف ها از استاندارد TK با توجه به فیلتر مشخص شده، در حالی که یک ستون "نام گذاری" حفظ می شود // همه ردیف ها در جایی انتخاب می شوند که مقدار در ستون Quantity 0 باشد، فقط ستون Nomenclature در قسمت گنجانده می شود. جدول حاصل انتخاب ردیف = ساختار جدید("کمیت" , 0); ستون های مرجع = "نامگذاری"; DemoTable = TableReference.Copy(RowsReference, ColumnsReference); // متغیر با کپی کامل جدول و حذف بعدی یک ردیف با مقدار فیلد مقدار برابر با صفر و حذف کل ستون "Number" RowSelection = New Structure("Number", 0); ستون های مرجع = "نامگذاری"; DemoTable = TableReference.Copy(RowsReference, ColumnsReference); TableString = DemoTable.Find(0, "Count"); DemoTable.Delete(TableString); DemoTable.Columns.Delete("تعداد"); // گزینه های مشابه و تغییرات آنها را می توان در قسمت های جدول اعمال کرد و مجموعه های رکورد را ثبت کرد

ایجاد جدول با پرس و جو

اگر پایگاه داده یک قالب برای جدول مورد نیاز شما دارد، می توانید از یک کوئری برای ایجاد سریع جدول با ساختار دلخواه استفاده کنید.

// نمونه ای از ایجاد یک جدول خالی به دنبال مدل ساختار ثبت تجمع // به راحتی می توان حدس زد که از این طریق می توانید یک جدول پر شده را نیز دریافت کنید Request = New Request("SELECT FIRST 0 * From Accumulation Register. Goods in انبار")؛ QueryResult = Query.Execute(); DemoTable = QueryResult.Upload(); // مثالی با ایجاد یک جدول خالی با انواع و نام فیلدهای مشخص شده Query = New Query; Query.Text = "انتخاب FIRST 0 | Value(Catalog.Nomenclature.NullReference) AS Nomenclature, | EXPRESS(0 AS NUMBER(15, 3)) AS Quantity"; QueryResult = Query.Execute(); DemoTable = QueryResult.Upload(); // مهم! فراموش نکنید که نوع Null همیشه در انواع مقدار ستون به دست آمده از پرس و جو وجود دارد // بنابراین، TM ایجاد شده توسط پرس و جو همیشه دارای انواع ستون های ترکیبی است.

نتیجه

در این مقاله کوتاه، ویژگی‌های اساسی و تکنیک‌های کاربردی برای ایجاد جدول ارزش را پوشش داده‌ایم که برای درک و شروع استفاده کافی است. جدول مقادیر خود شیء به قدری چند وجهی است که شرح مفصلی از قابلیت های آن مستلزم نوشتن مقاله جداگانه ای در مورد تکنیک ها و روش های کار است.

برترین مقالات مرتبط