public XmlDocument CreateBuyerRole(string GUID, string requestXML) { string methodName = "CreateBuyerRole"; XmlWriter xmlWriter = null; StringWriter strWriter = null; XmlDocument xmlResponse = new XmlDocument(); XmlDocument xmlInput = null; string errMsg = ""; try { Startup(); m_connectorInc.Init_ResponseXML(methodName, ref strWriter, ref xmlWriter); if (!m_authInc.Is_Valid_GUID(GUID)) { m_logger.WriteError(m_phraseLib.Detokenize("term.guidnotvalid", GUID, m_common.Get_AppInfo().AppName)); m_connectorInc.Generate_Status_XML(ref xmlWriter, methodName, CMS.CMSException.StatusCodes.INVALID_GUID, m_phraseLib.Detokenize("term.guidnotvalid", GUID, m_common.Get_AppInfo().AppName), false); } else if (!m_connectorInc.ConvertStringToXML(requestXML, ref xmlInput)) { m_logger.WriteError(m_phraseLib.Detokenize("term.invalidparameterxmldocument", "requestXML")); m_connectorInc.Generate_Status_XML(ref xmlWriter, methodName, CMS.CMSException.StatusCodes.INVALID_XML_DOCUMENT, m_phraseLib.Detokenize("term.invalidparameterxmldocument", "requestXML"), false); } else if (!m_connectorInc.IsValidXmlDocument("BuyerRoleData.xsd", xmlInput, out errMsg)) { m_logger.WriteError(m_phraseLib.Detokenize("term.invalidxmlconformxsd", "requestXML", "BuyerRoleData.xsd: " + errMsg)); m_connectorInc.Generate_Status_XML(ref xmlWriter, methodName, CMS.CMSException.StatusCodes.INVALID_XML_DOCUMENT, m_phraseLib.Detokenize("term.invalidxmlconformxsd", "requestXML", "BuyerRoleData.xsd: " + errMsg), false); } else { var buyerRole = ParseBuyerRoleDetails(xmlInput); var response = m_buyerRole.CreateBuyerRole(buyerRole); CMS.CMSException.StatusCodes statusCode = CMS.CMSException.StatusCodes.GENERAL_ERROR; if (response.ResultType.CompareTo(AMSResultType.Success) == 0) { statusCode = CMS.CMSException.StatusCodes.SUCCESS; xmlWriter.WriteStartElement("Buyer"); xmlWriter.WriteElementString("ID", Convert.ToString(response.Result)); xmlWriter.WriteEndElement(); m_connectorInc.Generate_Status_XML(ref xmlWriter, methodName, statusCode, response.MessageString, true); } else { m_logger.WriteError(response.MessageString); m_connectorInc.Generate_Status_XML(ref xmlWriter, methodName, statusCode, response.MessageString, false); } } } catch (Exception ex) { m_logger.WriteError("Failed to create Buyer roler- please see the error log!"); m_errHandler.ProcessError(ex); ProcessException(ex, methodName, ref xmlWriter, ref strWriter); } CloseResponseXml(ref xmlWriter, ref strWriter, ref xmlResponse); Shutdown(); return(xmlResponse); }
protected void btnSave_Click(Object sender, EventArgs e) { string logMsg = String.Empty; try { if (CurrentUser.UserPermissions.EditBuyerRoles == false) { DisplayMessage("User does not have Edit Permission"); } else { int id = 0; Buyer newbuyer = new Buyer(); newbuyer.AdminUser = IncludeAdminUser; BuyerDepts buyerdepts = new BuyerDepts(); buyerdepts.Departments = IncludedDepartments; newbuyer.Department = buyerdepts; newbuyer.ExternalID = txtName.Text; if (buyer != null) { AMSResult <bool> result = m_buyerRoleService.UpdateBuyerRoleByInternalId(buyer.ID, newbuyer, LanguageID); updateFolder(buyer.ID); if (result.ResultType == AMSResultType.Success) { DisplayMessage(result.MessageString, true); if (newbuyer.ExternalID != buyer.ExternalID) { htitle.InnerText = buyer == null?PhraseLib.Lookup("term.new", LanguageID) + " " + PhraseLib.Lookup("term.buyer", LanguageID) : PhraseLib.Lookup("term.buyers", LanguageID) + " #" + buyer.ID + ":" + " " + newbuyer.ExternalID; } Response.Redirect("buyer-edit.aspx?externalbuyerid=" + Server.UrlEncode(newbuyer.ExternalID) + "&id=" + buyer.ID); } else { DisplayMessage(result.MessageString); } } else { AMSResult <int> result = m_buyerRoleService.CreateBuyerRole(newbuyer, LanguageID); if (result.ResultType == AMSResultType.Success) { AMSResult <Buyer> buyercreated = m_buyerRoleService.LookupBuyerRoleByInternalId(result.Result); DisplayMessage(result.MessageString, true); if (templist.Value != "") { id = result.Result; int folderid = Convert.ToInt32(templist.Value); m_buyerRoleService.updateFolder(id, folderid); TempFolder.Value = folderName.Result; ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "myfun1", "UpdateFolderName()", true); } Response.Redirect("buyer-edit.aspx?externalbuyerid=" + Server.UrlEncode(buyercreated.Result.ExternalID) + "&id=" + buyercreated.Result.ID); } else { DisplayMessage(result.MessageString); } } } } catch (Exception ex) { //infobar.InnerText = ErrorHandler.ProcessError(ex); //infobar.Visible = true; DisplayMessage(ex.Message); } }