/// <summary> /// load article information to ArticleMasterSetRequest /// </summary> /// <param name="currentArticleTree">Article tree to update</param> /// <param name="article">Article source information.</param> private void LoadPISArticleToRequest(ArticleTree <PISArticle> currentArticleTree, Article article) { PISArticle currentPISArticle = currentArticleTree.GetArticle(); currentPISArticle.Attributes[PisArticleAttribute.RequiredFridge].Value = TypeConverter.ConvertBool(article.RequiresFridge).ToString(); currentPISArticle.ScanCodes.Add(new PisArticleScanCode() { PisArticleID = currentPISArticle.ID, ScanCode = article.Id != null ? TextConverter.UnescapeInvalidXmlChars(article.Id) : string.Empty, }); currentPISArticle.MaxSubItemQuantity = TypeConverter.ConvertInt(article.MaxSubItemQuantity); currentPISArticle.StockLocationID = string.IsNullOrEmpty(article.StockLocationId) ? string.Empty : TextConverter.UnescapeInvalidXmlChars(article.StockLocationId); currentPISArticle.MachineLocation = string.IsNullOrEmpty(article.MachineLocation) ? string.Empty : TextConverter.UnescapeInvalidXmlChars(article.MachineLocation); currentPISArticle.BatchTracking = TypeConverter.ConvertBool(article.BatchTracking); currentPISArticle.SerialTracking = TypeConverter.ConvertBool(article.SerialTracking); currentPISArticle.ExpiryTracking = TypeConverter.ConvertBool(article.ExpiryTracking); // Load current article child Articles. for (int i = 0; i < article.ChildArticle.Count; ++i) { LoadPISArticleToRequest(currentArticleTree.GetChildren()[i], article.ChildArticle[i]); } }
private void dataGridViewMasterArticle_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (e.RowIndex == -1) { return; } if (e.ColumnIndex == this.dataGridViewMasterArticleLoadPack.Index) { TenantInfo selectedTenant = (TenantInfo)comboBoxMasterDataSelectTenant.SelectedItem; StockLocationInfo selectedStockLocationInfo = (StockLocationInfo)comboBoxMasterDataSelectLocation.SelectedItem; PISArticle pisArticle = (dataGridViewMasterArticle.Rows[e.RowIndex].DataBoundItem as PISArticle); this.simulatorCore.Stock.LoadInput(pisArticle.Code, pisArticle.Name, pisArticle.DosageForm, pisArticle.PackagingUnit, pisArticle.MaxSubItemQuantity, textBoxMasterDataBatchNumber.Text, textBoxMasterDataExternalID.Text, dateTimePickerMasterDataExpiryDate.Value, (int)numericUpDownSubItemQuantity.Value, numericUpDownMasterDataMachineLocation.Value.ToString(), (selectedTenant != null) ? selectedTenant.ID : "", (selectedStockLocationInfo != null) ? selectedStockLocationInfo.ID : ""); } }
/// <summary> /// load article information to ArticleMasterSetRequest Small set /// </summary> /// <param name="request">ArticleMasterSetRequest to update.</param> /// <param name="currentArticleTree">Article tree to update</param> /// <param name="article">Article source information.</param> private void LoadPISArticleToRequestSmallSet(Interfaces.Messages.Stock.ArticleMasterSetRequest request, ArticleTree <PISArticle> currentArticleTree, Article article) { PISArticle currentPISArticle = currentArticleTree.GetArticle(); currentPISArticle.Code = article.Id != null?TextConverter.UnescapeInvalidXmlChars(article.Id) : string.Empty; currentPISArticle.Name = article.Name != null?TextConverter.UnescapeInvalidXmlChars(article.Name) : string.Empty; currentPISArticle.DosageForm = article.DosageForm != null?TextConverter.UnescapeInvalidXmlChars(article.DosageForm) : string.Empty; currentPISArticle.PackagingUnit = article.PackagingUnit != null?TextConverter.UnescapeInvalidXmlChars(article.PackagingUnit) : string.Empty; currentPISArticle.RobotArticleCode = article.Id != null?TextConverter.UnescapeInvalidXmlChars(article.Id) : string.Empty; // in wwks2, PIS code = robot article code. request.PISArticles.Add(currentPISArticle); // Load current article child Articles. foreach (var childArticle in article.ChildArticle) { ArticleTree <PISArticle> childArticleTree = new ArticleTree <PISArticle>(); LoadPISArticleToRequestSmallSet(request, childArticleTree, childArticle); currentArticleTree.AddChild(childArticleTree); } }