private static Flow DefineDemoQuerySteps() { var retVal = new Flow(); retVal.Add(new Step("10", "Enter the name of the connection string", "Plugin.ConsoleUI.PublishStringFromUI")); retVal.Add(new Step("20", "Get the connection string", "Plugin.DataHelper.PublishConnectionString", new[] { new Parameter("String", "10", 0) })); retVal.Add(new Step("30", "Parse the connection string", "Plugin.DataHelper.ParseConnectionString", new[] { new Parameter("Connection String", "20", 0), })); retVal.Add(new Step("40", "Build DB verification string", "Plugin.DataHelper.PublishSanitisedConnectionStringForVerification", new[] { new Parameter("Connection String Parts", "30", 0), })); retVal.Add(new Step("50", "Confirm DB", "Plugin.ConsoleUI.Confirm", new[] { new Parameter("String", "40", 0), })); retVal.Add(new Step("60", "Publish demo row action", "Plugin.Demo.Query.PublishRowActionForQuery1")); retVal.Add(new Step("80", "Get the query", "Plugin.DataHelper.PublishQuery", new[] { new Parameter("String", "60", 0), new Parameter("Configuration Info", "60", 0), })); retVal.Add(new Step("90", "Run the query", "Plugin.DataHelper.PerformActionOnEveryRow", new[] { new Parameter("Row Action", "60", 0), new Parameter("Connection String", "20", 0), new Parameter("Query Definition", "80", 0), })); return retVal; }
public void Execute(Flow steps) { string name = string.Empty; try { foreach (var step in steps.OrderedContents) { name = step.ActionName; logger.DebugFormat("*** {0} (type={1}) ***", step.Name, step.ActionName); if (BeforeStepExecution != null) BeforeStepExecution(step, EventArgs.Empty); definitions[name].Execute(this, step); if (AfterStepExecution != null) AfterStepExecution(step, EventArgs.Empty); } } catch (KeyNotFoundException) { logger.ErrorFormat("Action [{0}] was not found in list", name); logger.Debug("Actions in list:"); foreach (var action in definitions) logger.DebugFormat("-> {0}", action.Key); } }
public static Report BiggestCountries() { var dc = new DataContext(); var data = new Dictionary<string, GdpItem>(); var src = Pecunia.Services.GdpDataProvider.GetData(); var lastYear = src.Max(a=>a.Year); foreach (var item in src) { GdpItem i; if (!data.TryGetValue(item.Country, out i)) data.Add(item.Country, i = new GdpItem { Country = item.Country }); i.Process(lastYear, item); } var res = data.Values.ToArray(); dc.AddTable("data", res); var table = TableGenerator.GetTable(typeof(GdpItem), "data"); table.Columns.Last().SortIndex = 0; table.Columns.Last().SortDirection = SortDirection.Descending; for (var i = 0; i < 5; i++) { table.Columns[i + 2].HeaderText = (lastYear - 4 + i).ToString(); } var flow = new Flow { Orientation = FlowOrientation.Vertical }; flow.Add(table); return Report.CreateReport(flow, dc); }
public void Test2() { var dc = new DataContext(); dc.AddTable("data", new[] { new Item { Col1="A", Col2 = 2 } }); var flow = new Flow { Orientation = FlowOrientation.Vertical }; var table = flow.AddTable<Item>("data"); table.Columns.Single(a => a.DataField == "Col2").ConditionalFormatting = (value) => { if (!(value is int)) return null; var v = (int)value; if (v > 0) return new Styling.CellStyle { FontStyle = new Styling.FontStyle { FontColor = Styling.Color.FromHtml("#00FF00") } }; return null; }; var rep = Report.CreateReport(flow, dc); var cells = ReportUtil.GetCellMatrix(rep); Assert.IsNull(cells[0][0].CustomStyle); Assert.IsNotNull(cells[0][1].CustomStyle); var html = HtmlReportWriter.RenderReport(rep, new DefaultHtmlReportTheme()); Assert.IsTrue(html.Contains("style=\"color:")); Assert.IsTrue(html.Contains("#00FF00")); }
public Window Get(Flow.Data.FlowWindow window) { Window result = null; this.list.RemoveAll((info) => { var w = Flow.FlowSystem.GetWindow(info.id); return w == null || w.IsSocial() == false; }); if (window.IsSocial() == false) return result; foreach (var item in this.list) { if (item.id == window.id) { result = item; break; } } if (result == null) { result = new Window(window); this.list.Add(result); } return result; }
public void Test2() { var dc = new DataContext(); dc.AddTable("data", new[] { new Item { Name="1", Value = 2, G="1" }, new Item { Name="2", Value = 3, G="1" }, new Item { Name="3", Value = 4, G="2" } }); var flow = new Flow { Orientation = FlowOrientation.Vertical }; flow.AddTable<Item>("data"); var rep = Report.CreateReport(flow, dc); var cells = ReportUtil.GetCellMatrix(rep); //RowNumber Assert.AreEqual(1, cells[0][0].Value); Assert.AreEqual(2, cells[1][0].Value); Assert.AreEqual(1, cells[2][0].Value); //G2 Assert.AreEqual(1, cells[2][0].Value); //Accumulator Assert.AreEqual(2, cells[0][2].Value); Assert.AreEqual(5, cells[1][2].Value); //G2 Assert.AreEqual(4, cells[2][2].Value); }
protected void ODS_Flow_Inserting(object sender, ObjectDataSourceMethodEventArgs e) { flow = (Flow)e.InputParameters[0]; Controls_TextBox tbRefFlow = (Controls_TextBox)this.FV_Flow.FindControl("tbRefFlow"); Controls_TextBox tbPartyFrom = (Controls_TextBox)this.FV_Flow.FindControl("tbPartyFrom"); Controls_TextBox tbLocFrom = (Controls_TextBox)this.FV_Flow.FindControl("tbLocFrom"); Controls_TextBox tbLocTo = (Controls_TextBox)this.FV_Flow.FindControl("tbLocTo"); com.Sconit.Control.CodeMstrDropDownList ddlOrderTemplate = (com.Sconit.Control.CodeMstrDropDownList)(this.FV_Flow.FindControl("ddlOrderTemplate")); com.Sconit.Control.CodeMstrDropDownList ddlReceiptTemplate = (com.Sconit.Control.CodeMstrDropDownList)(this.FV_Flow.FindControl("ddlReceiptTemplate")); //com.Sconit.Control.CodeMstrDropDownList ddlHuTemplate = (com.Sconit.Control.CodeMstrDropDownList)(this.FV_Flow.FindControl("ddlHuTemplate")); com.Sconit.Control.CodeMstrDropDownList ddlCreateHuOption = (com.Sconit.Control.CodeMstrDropDownList)this.FV_Flow.FindControl("ddlCreateHuOption"); if (tbRefFlow != null && tbRefFlow.Text.Trim() != string.Empty) { flow.ReferenceFlow = TheFlowMgr.CheckAndLoadFlow(tbRefFlow.Text.Trim()).Code; } if (tbPartyFrom != null && tbPartyFrom.Text.Trim() != string.Empty) { flow.PartyFrom = ThePartyMgr.LoadParty(tbPartyFrom.Text.Trim()); } if (tbLocFrom != null && tbLocFrom.Text.Trim() != string.Empty) { flow.LocationFrom = TheLocationMgr.LoadLocation(tbLocFrom.Text.Trim()); } if (tbLocTo != null && tbLocTo.Text.Trim() != string.Empty) { flow.LocationTo = TheLocationMgr.LoadLocation(tbLocTo.Text.Trim()); } if (ddlOrderTemplate.SelectedIndex != -1) { flow.OrderTemplate = ddlOrderTemplate.SelectedValue; } if (ddlReceiptTemplate.SelectedIndex != -1) { flow.ReceiptTemplate = ddlReceiptTemplate.SelectedValue; } //if (ddlHuTemplate.SelectedIndex != -1) //{ // flow.HuTemplate = ddlHuTemplate.SelectedValue; //} if (ddlCreateHuOption.SelectedIndex != -1) { flow.CreateHuOption = ddlCreateHuOption.SelectedValue; } flow.CheckDetailOption = BusinessConstants.CODE_MASTER_CHECK_ORDER_DETAIL_OPTION_VALUE_NOT_CHECK; flow.Type = BusinessConstants.CODE_MASTER_FLOW_TYPE_VALUE_PRODUCTION; flow.AntiResolveHu = BusinessConstants.CODE_MASTER_ANTI_RESOLVE_HU_VALUE_NOT_RESOLVE; flow.BillSettleTerm = null; flow.PartyTo = flow.PartyFrom; flow.CreateUser = this.CurrentUser; flow.CreateDate = DateTime.Now; flow.LastModifyUser = this.CurrentUser; flow.LastModifyDate = DateTime.Now; flow.IsAsnUniqueReceipt = true; }
/// <summary> /// Constructor /// </summary> /// <param name="elem">Object to be queued</param> /// <param name="btime">Time it will take to finish it's buissines</param> /// <param name="term">Term created for calendar callback</param> public QueueElement(IQueueable elem, uint btime, uint timecame, Flow.Calendar.Term term, DESF.Flow.Event.Event ev) { _element = elem; _blockingTime = btime; _timeCame = timecame; _term = term; _event = ev; }
public void ConnectingPolymorphicTypes() { StartPoint<B> s = new StartPoint<B>((IWritableQueue<B> q) => q.Send(new B())); EndPoint<A> e = new EndPoint<A>((A q) => { }); Flow flow = new Flow(); flow.AddNode(s); flow.AddNode(e); flow.ConnectNodes(s, e, 0); }
public void CtorWorks() { // Arrange var x = new Flow(); // Act // Assert Assert.IsNotNull(x); }
public void InternalListOfStepsIsNeverNull() { // Arrange var x = new Flow(); // Act // Assert Assert.AreEqual(0, x.Count); }
public Flow ReadExistingFlow(Flow steps) { if (File.Exists(FileName)) using (var rd = new StreamReader(FileName, Encoding.UTF8)) { string xml = rd.ReadToEnd(); steps = xml.FromXml<Flow>(); } return steps; }
internal static Flow ConnectStartFilterEnd(TaskNode s, TaskNode filter, TaskNode n) { Flow flow = new Flow(); flow.AddNode(s); flow.AddNode(filter); flow.AddNode(n); flow.ConnectNodes(s, filter, 0); flow.ConnectNodes(filter, n, 0); flow.Error += new EventHandler<Flow.ErrorEventArgs>(flow_Error); return flow; }
/// <summary> /// Initializes this case with the specified holding flow. /// </summary> public void SetUp(Flow holder) { Flow = holder; Flow backup = Flow.CurrentFlow; Flow.CurrentFlow = holder; SetUp(); Flow.CurrentFlow = backup; }
/// <summary> /// <see cref="ICase.Teardown"/> /// </summary> public void Teardown(Flow holder) { Flow backup = Flow.CurrentFlow; Flow.CurrentFlow = holder; TeardownInternal(); Flow.CurrentFlow = backup; Dispose(); // EventSink.Dispose() }
/// <summary> /// Cleans up this case with the specified holding flow. /// </summary> public void TearDown(Flow holder) { Flow backup = Flow.CurrentFlow; Flow.CurrentFlow = holder; TearDown(); Flow.CurrentFlow = backup; Dispose(); }
/// <summary> /// <see cref="ICase.Setup"/> /// </summary> public void Setup(Flow holder) { Flow = holder; Flow backup = Flow.CurrentFlow; Flow.CurrentFlow = holder; SetupInternal(); Flow.CurrentFlow = backup; }
// Use this for initialization void Start () { _game = GameObject.Find("Game"); _flow = _game.GetComponent<Flow>(); _infoTextMeshRenderer = gameObject.GetComponentInChildren<MeshRenderer>(); _infoTextMeshRenderer.sortingLayerID = SortingLayer.layers[SortingLayer.layers.Length-1].id; _infoTextMeshRenderer.gameObject.GetComponent<TextMesh>().text = infoText; HideActionDescription(); }
public void TakeSample(Flow.ITransient sender) { var sr = new StateRecord (this); _samples.Add(sr); // if (MarkerPrefab != null) // { // var marker = (GameObject)Instantiate(MarkerPrefab); // marker.transform.position = sr.Position; // marker.transform.rotation = sr.Rotation; // } }
public FilesController() { _fileSystem = new FileSystem { GetFilePathFunc = filePath => string.Format( "{0}/{1}", HostingEnvironment.MapPath("~/App_Data").Replace("\\", "/"), filePath) }; _flow = new Flow(_fileSystem); }
public void AddThrowsOnDuplicateStepId() { // Arrange var x = new Flow(); const string sameId = "1111"; var step1 = new Step(sameId, "name1", "action1"); var step2 = new Step(sameId, "name2", "action2"); // Act x.Add(step1); x.Add(step2); }
private static void MainTask() { var ad = new XmlActionDefinitionProvider(); Dictionary<string, ActionDefinition> actions = ad.Get; FlowIO io = new FlowIO(); Flow steps = new Flow(); steps = io.ReadExistingFlow(steps); Model model = new Model(actions, steps); if (MaintainSingleFlow.EditAndSave(model)) io.SaveFlow(steps); }
public void AddIncrementsOrderOfFirstStep() { // Arrange var x = new Flow(); var step = new Step("name", "action"); int previous = step.Order; // Act x.Add(step); // Assert Assert.AreEqual(0, previous); Assert.AreEqual(1, step.Order); }
public void ValidateAddsErrorIfFlowIsEmpty() { // Arrange var x = new Flow(); var actions = new CalculatorActionDefinitionProvider().Get; // Act var errors = x.Validate(actions); // Assert Assert.IsNotNull(errors); Assert.AreEqual(1, errors.Count); Assert.IsTrue(errors[0].Message.Contains("Nothing to do")); }
public void InitPageParameter(Flow flow) { this.PartyFromCode = flow.PartyFrom.Code; this.PartyToCode = flow.PartyTo.Code; this.FlowType = flow.Type; this.FlowCode = flow.Code; int seqInterval = int.Parse(TheEntityPreferenceMgr.LoadEntityPreference(BusinessConstants.ENTITY_PREFERENCE_CODE_SEQ_INTERVAL).Value); if (flow.AllowCreateDetail && false) //新增的Detail打印有问题,暂时不支持 { FlowDetail blankFlowDetail = new FlowDetail(); if (flow.FlowDetails == null || flow.FlowDetails.Count == 0) { blankFlowDetail.Sequence = seqInterval; } else { int CurrentSeq = flow.FlowDetails.Last<FlowDetail>().Sequence + seqInterval; blankFlowDetail.Sequence = CurrentSeq; } blankFlowDetail.IsBlankDetail = true; flow.AddFlowDetail(blankFlowDetail); } #region 设置默认LotNo string lotNo = LotNoHelper.GenerateLotNo(); foreach (FlowDetail flowDetail in flow.FlowDetails) { flowDetail.HuLotNo = lotNo; } #endregion this.GV_List.DataSource = flow.FlowDetails; this.GV_List.DataBind(); BindShift(); if (flow.Type != BusinessConstants.CODE_MASTER_ORDER_TYPE_VALUE_PRODUCTION) { this.TabProd.Visible = false; this.GV_List.Columns[8].Visible = true; } else { this.TabProd.Visible = true; this.GV_List.Columns[8].Visible = false; } }
public Meting() { Container = new Container(0, ""); Werknemer = new Werknemer(0, ""); Resultaat = new Resultaat(0, ""); Advies = new Advies(0, ""); Opdrachtgever = new Opdrachtgever(0, ""); Locatie = new Locatie(0, "", null, 0); Lading = new Lading(0, ""); Herkomst = new Herkomst(0, ""); SoortMeting = new SoortMeting(0, ""); LocatieMeting = new LocatieMeting(0, ""); Supplier = new Supplier(0, ""); Flow = new Flow(0, ""); }
private static Flow DefineDemoCalculatorSteps() { var retVal = new Flow(); retVal.Add(new Step("10", "Enter 1st integer", "Plugin.ConsoleUI.PublishIntegerFromUI")); retVal.Add(new Step("20", "Enter 2nd integer", "Plugin.ConsoleUI.PublishIntegerFromUI")); var trickyStep = new Step("30", "Compute stuff", "Plugin.Demo.Calculator.DoArithmetic"); trickyStep.AddParameter("Integer", 100, new Parameter("Integer", "10", 0)); trickyStep.AddParameter("Integer", 200, new Parameter("Integer", "20", 0)); retVal.Add(trickyStep); retVal.Add(new Step("40", "Format result", "Plugin.Demo.Calculator.FormatNumber", new[] { new Parameter("Number", "30", 3), })); retVal.Add(new Step("50", "Display result", "Plugin.ConsoleUI.DisplayString", new[] { new Parameter("String", "40", 0), })); return retVal; }
private static Flow DefineDemoCurrencyConverterSteps() { var retVal = new Flow(); retVal.Add(new Step("10", "Enter 1st currency", "Plugin.ConsoleUI.PublishStringFromUI")); retVal.Add(new Step("20", "Enter 2nd currency", "Plugin.ConsoleUI.PublishStringFromUI")); var trickyStep = new Step("30", "Get exchange rate", "Plugin.Demo.CurrencyConverter.GetExchangeRate"); trickyStep.AddParameter("String", 1, new Parameter("String", "10", 0)); trickyStep.AddParameter("String", 2, new Parameter("String", "20", 0)); retVal.Add(trickyStep); retVal.Add(new Step("40", "Format result", "Plugin.Demo.Calculator.FormatNumber", new[] { new Parameter("Number", "30", 0), })); retVal.Add(new Step("50", "Display result", "Plugin.ConsoleUI.DisplayString", new[] { new Parameter("String", "40", 0), })); return retVal; }
public void AddIncrementsOrderOfSubsequentSteps() { // Arrange var x = new Flow(); var step1 = new Step("name1", "action"); var step2 = new Step("name2", "action"); // Act x.Add(step1); x.Add(step2); // Assert Assert.AreEqual(1, step1.Order); Assert.AreEqual(2, step2.Order); }
public void SaveFlow(Flow steps) { if (File.Exists(FileName)) { string bak = FileName + ".bak"; if (File.Exists(bak)) File.Delete(bak); File.Move(FileName, bak); } string xml = steps.ToXml(); using (var wt = new StreamWriter(FileName, false, Encoding.UTF8)) { wt.Write(xml); wt.Flush(); } }
public static Flow?LitersPerSecond <T>(this T?value) where T : struct => Flow.FromLitersPerSecond(value == null ? (double?)null : Convert.ToDouble(value.Value));
private void NewLine() { _flow = Flow.NewLine; }
// normal forward, normal backward // inds control the neurons computed, originally for efficient dropout public virtual Tensor Step(Flow f, Tensor x, int[] inds) { return(f.AddBias(f.Multiply(x, Wxh, inds), Bh, inds)); }
public static void DeletePhysiotherapist() { int IdFisioterapeuta = GlobalController.instance.admin.idFisioterapeuta; int IdPessoa = GlobalController.instance.admin.persona.idPessoa; string nomePessoa = (GlobalController.instance.admin.persona.nomePessoa).Replace(' ', '_'); string nomePasta = string.Format("{0}/Movimentos/{1}-{2}", Application.dataPath, IdPessoa, nomePessoa); List <Movimento> allMovements = Movimento.Read(); List <Sessao> allSessions = Sessao.Read(); List <PontosRotuloFisioterapeuta> allPRF = PontosRotuloFisioterapeuta.Read(); List <Exercicio> allExercises = Exercicio.Read(); List <MovimentoMusculo> allMovMuscles = MovimentoMusculo.Read(); foreach (var movements in allMovements) { if (movements.idFisioterapeuta == IdFisioterapeuta) { foreach (var prf in allPRF) { if (prf.idMovimento == movements.idMovimento) { PontosRotuloFisioterapeuta.DeleteValue(prf.idRotuloFisioterapeuta); } } foreach (var mvm in allMovMuscles) { if (mvm.idMovimento == movements.idMovimento) { MovimentoMusculo.DeleteValue(mvm.idMovimento, mvm.idMusculo); } } foreach (var execises in allExercises) { if (execises.idMovimento == movements.idMovimento) { Exercicio.DeleteValue(execises.idExercicio); } } Movimento.DeleteValue(movements.idMovimento); } } foreach (var session in allSessions) { if (session.idPaciente == IdFisioterapeuta) { Sessao.DeleteValue(session.idSessao); } } Fisioterapeuta.DeleteValue(IdFisioterapeuta); if (Directory.Exists(nomePasta)) { Directory.Delete(nomePasta, true); } Flow.StaticNewPhysiotherapistAdm(); }
void Start(Flow f) { paused = false; status = Status.Running; this.TryStartSubGraph(targetAgent.value, (result) => { endResult = result; OnStop(f); }); }
void OnStop(Flow f) { status = Status.Resting; f.Call(onFinish); }
public static Flow CubicYardsPerHour <T>(this T value) => Flow.FromCubicYardsPerHour(Convert.ToDouble(value));
/// <inheritdoc cref="Flow.FromNanolitersPerMinute(UnitsNet.QuantityValue)" /> public static Flow NanolitersPerMinute <T>(this T value) => Flow.FromNanolitersPerMinute(Convert.ToDouble(value));
public static Flow CubicYardsPerMinute <T>(this T value) => Flow.FromCubicYardsPerMinute(Convert.ToDouble(value));
public static Flow?MillionUsGallonsPerDay <T>(this T?value) where T : struct => Flow.FromMillionUsGallonsPerDay(value == null ? (double?)null : Convert.ToDouble(value.Value));
public static Flow MillionUsGallonsPerDay <T>(this T value) => Flow.FromMillionUsGallonsPerDay(Convert.ToDouble(value));
public static Flow?CubicYardsPerMinute <T>(this T?value) where T : struct => Flow.FromCubicYardsPerMinute(value == null ? (double?)null : Convert.ToDouble(value.Value));
void Resume(Flow f) { paused = false; this.TryResumeSubGraph(); }
public static Flow?CubicMetersPerHour <T>(this T?value) where T : struct => Flow.FromCubicMetersPerHour(value == null ? (double?)null : Convert.ToDouble(value.Value));
void Pause(Flow f) { paused = true; this.TryPauseSubGraph(); }
public override IProcessor <int?, int?> CreateIdentityProcessor(int bufferSize) { var materializer = ActorMaterializer.Create(System); return(Flow.Create <int?>().Select(x => x).Named("identity").ToProcessor().Run(materializer)); }
void Stop(Flow f) { this.TryStopSubGraph(); }
internal override void OnFlow(Flow flow) { }
/// <summary> /// Converts between various units of volumetric flow. /// </summary> /// /// <param name="oldVal">the value to be converted</param> /// <param name="oldUnit">the original unit of measure</param> /// <param name="newUnit">the new unit of measure</param> /// /// <returns>the converted value</returns> public static double ConvertFlow(double oldVal, Flow oldUnit, Flow newUnit) { // Look up conversion from old unit to new unit. return(oldVal / FlowConversion[oldUnit] * FlowConversion[newUnit]); }
/// <summary> /// 发送测试 /// </summary> public override void Do() { //初始化变量. fk_flow = "023"; userNo = "zhanghaicheng"; fl = new Flow(fk_flow); //执行登录. BP.WF.Dev2Interface.Port_Login(userNo); //执行第1步检查,创建工作与发送. this.workid = BP.WF.Dev2Interface.Node_CreateBlankWork(fk_flow, null, null, userNo, null); //下一步骤的接受人员定义多个. string toEmps = "zhoushengyu,zhangyifan,"; //向发送多个人. objs = BP.WF.Dev2Interface.Node_SendWork(this.fk_flow, this.workid, null, null, 0, toEmps); #region 检查发送变量是否正确? if (objs.VarAcceptersID != toEmps) { throw new Exception("@应该是接受者ID多人,现在是:" + objs.VarAcceptersID); } if (objs.VarAcceptersName != "周升雨,张一帆,") { throw new Exception("@应该是接受者Name多人,现在是:" + objs.VarAcceptersID); } if (objs.VarCurrNodeID != 2301) { throw new Exception("@当前节点应该是 2301 ,现在是:" + objs.VarCurrNodeID); } if (objs.VarToNodeID != 2302) { throw new Exception("@到达节点应该是 2302 ,现在是:" + objs.VarToNodeID); } #endregion 检查发送变量是否正确? #region 检查流程引擎表是否正确? GenerWorkFlow gwf = new GenerWorkFlow(); gwf.WorkID = this.workid; if (gwf.RetrieveFromDBSources() != 1) { throw new Exception("@丢失了流程引擎注册表数据"); } if (gwf.FK_Dept != WebUser.FK_Dept) { throw new Exception("@隶属部门错误应当是:" + WebUser.FK_Dept + ",现在是:" + gwf.FK_Dept); } if (gwf.FK_Flow != fk_flow) { throw new Exception("@流程编号错误应当是:" + fk_flow + ",现在是:" + gwf.FK_Flow); } if (gwf.FK_Node != 2302) { throw new Exception("@当前节点错误应当是:" + 2302 + ",现在是:" + gwf.FK_Node); } if (gwf.Starter != userNo) { throw new Exception("@当前 Starter 错误应当是:" + userNo + ",现在是:" + gwf.Starter); } if (gwf.StarterName != WebUser.Name) { throw new Exception("@当前 StarterName 错误应当是:" + WebUser.Name + ",现在是:" + gwf.StarterName); } if (string.IsNullOrEmpty(gwf.Title)) { throw new Exception("@ Title 错误, 不能为空. "); } GenerWorkerLists wls = new GenerWorkerLists(); wls.Retrieve(GenerWorkerListAttr.WorkID, this.workid); if (wls.Count != 3) { throw new Exception("@应当有三个数据,现在是:" + wls.Count); } foreach (GenerWorkerList wl in wls) { if (wl.FID != 0) { throw new Exception("@ FID 错误,应该是" + 0 + ",现在是:" + wl.FID); } if (wl.FK_Emp == "zhanghaicheng") { if (wl.FK_Dept != WebUser.FK_Dept) { throw new Exception("@部门错误,应该是" + WebUser.FK_Dept + ",现在是:" + wl.FK_Dept); } if (wl.FK_Flow != fk_flow) { throw new Exception("@ FK_Flow 错误,应该是" + fk_flow + ",现在是:" + wl.FK_Flow); } if (wl.FK_Node != 2301) { throw new Exception("@ FK_Node 错误,应该是" + 2301 + ",现在是:" + wl.FK_Node); } if (wl.IsEnable == false) { throw new Exception("@ IsEnable 错误,应该是true,现在是:" + wl.IsEnable); } if (wl.IsRead == true) { throw new Exception("@ IsRead 错误,应该是false,现在是:" + wl.IsEnable); } if (wl.IsPass == false) { throw new Exception("@ IsPass 错误,应该是true,现在是:" + wl.IsEnable); } //if (wl.Sender != WebUser.No + ",张海成") // throw new Exception("@ Sender 错误,应该是" + WebUser.No + ",张海成 ,现在是:" + wl.Sender); } if (wl.FK_Emp == "zhoushengyu" || wl.FK_Emp == "zhangyifan") { BP.Port.Emp emp = new Port.Emp(wl.FK_Emp); if (wl.FK_Dept != emp.FK_Dept) { throw new Exception("@部门错误,应该是" + emp.FK_Dept + ",现在是:" + wl.FK_Dept); } if (wl.FK_Flow != fk_flow) { throw new Exception("@ FK_Flow 错误,应该是" + fk_flow + ",现在是:" + wl.FK_Flow); } if (wl.FK_Node != 2302) { throw new Exception("@ FK_Node 错误,应该是" + 2302 + ",现在是:" + wl.FK_Node); } if (wl.IsEnable == false) { throw new Exception("@ IsEnable 错误,应该是true,现在是:" + wl.IsEnable); } if (wl.IsRead == true) { throw new Exception("@ IsRead 错误,应该是false,现在是:" + wl.IsEnable); } if (wl.IsPass == true) { throw new Exception("@ IsPass 错误,应该是false,现在是:" + wl.IsEnable); } //if (wl.Sender != "zhanghaicheng") // throw new Exception("@ Sender 错误,应该是" + WebUser.No + ",现在是:" + wl.Sender); } } string sql = "SELECT COUNT(*) FROM WF_EmpWorks WHERE WorkID=" + this.workid + " AND FK_Emp='zhoushengyu'"; if (DBAccess.RunSQLReturnValInt(sql) != 1) { throw new Exception("@不应该查询不到 zhoushengyu 的待办."); } sql = "SELECT COUNT(*) FROM WF_EmpWorks WHERE WorkID=" + this.workid + " AND FK_Emp='zhangyifan'"; if (DBAccess.RunSQLReturnValInt(sql) != 1) { throw new Exception("@不应该查询不到 zhangyifan 的待办."); } #endregion 检查流程引擎表是否正确? // 让其中的一个人登录. BP.WF.Dev2Interface.Port_Login("zhoushengyu"); //让他发送. BP.WF.Dev2Interface.Node_SendWork(this.fk_flow, this.workid); #region 检查流程引擎表是否正确? sql = "SELECT COUNT(*) FROM WF_EmpWorks WHERE WorkID=" + this.workid + " AND FK_Emp='zhoushengyu'"; if (DBAccess.RunSQLReturnValInt(sql) != 0) { throw new Exception("@不应该在查询到 zhoushengyu 的待办."); } sql = "SELECT COUNT(*) FROM WF_EmpWorks WHERE WorkID=" + this.workid + " AND FK_Emp='zhangyifan'"; if (DBAccess.RunSQLReturnValInt(sql) != 0) { throw new Exception("@不应该在查询到 zhangyifan 的待办."); } #endregion 检查流程引擎表是否正确? //删除该测试数据. BP.WF.Dev2Interface.Flow_DoDeleteFlowByReal(this.fk_flow, workid, true); }
public Flow <T, Versioned <T>, NotUsed> Topic <T>(string topic) { return(Flow.FromGraph(new ReplicatorStage <T>())); }
public void ExecuteTest() { { int channels = 32, width = 65536, length = channels * width; Shape shape = Shape.Map0D(channels, width); Random rd = new Random(1234); Tensor t = Tensor.NormalRandom(shape, rd); Assert.AreEqual(shape, t.Shape); float[] y = t.State; double sq_sum = 0, sum = 0; int[] cnt = new int[4]; foreach (float v in y) { sq_sum += v * v; sum += v; float abs_v = Math.Abs(v); if (abs_v < 4) { cnt[(int)Math.Floor(abs_v)]++; } } double mean = sum / length; double variance = sq_sum / length - mean * mean; Assert.AreEqual(0, mean, 2e-3, "mean"); Assert.AreEqual(1, variance, 2e-3, "variance"); Assert.AreEqual(0.682689492, (double)cnt[0] / length, 1e-3, "sigma1"); Assert.AreEqual(0.271810244, (double)cnt[1] / length, 1e-3, "sigma2"); Assert.AreEqual(0.042800468, (double)cnt[2] / length, 1e-3, "sigma3"); Assert.AreEqual(0.002636456, (double)cnt[3] / length, 1e-3, "sigma4"); } { int length = 5000; Shape shape = Shape.Vector(length); InputNode node = VariableNode.NormalRandom(shape, new Random(1234)); OutputNode output = node.Save(); Flow flow = Flow.FromInputs(node); flow.Execute(); float[] y1 = output.Tensor.State; flow.Execute(); float[] y2 = output.Tensor.State; CollectionAssert.AreNotEqual(y1, y2); Assert.IsTrue(y2.Min() < -1); Assert.IsTrue(y2.Max() > 1); } }
// normal forward, top-k backward public virtual Tensor StepTopK(Flow f, Tensor x, int k) { return(f.AddBias(f.MultiplyTop(x, Wxh, k), Bh)); }
private void Out(string s, Flow after) { Out(Flow.None, s, after); }
// normal forward, normal backward public virtual Tensor Step(Flow f, Tensor x) { return(f.AddBias(f.Multiply(x, Wxh), Bh)); }
public static Flow LitersPerHour <T>(this T value) => Flow.FromLitersPerHour(Convert.ToDouble(value));
protected override Expression VisitBinary(BinaryExpression node) { if (node.NodeType == ExpressionType.ArrayIndex) { ParenthesizedVisit(node, node.Left); Out("["); Visit(node.Right); Out("]"); } else { bool parenthesizeLeft = NeedsParentheses(node, node.Left); bool parenthesizeRight = NeedsParentheses(node, node.Right); string op; bool isChecked = false; Flow beforeOp = Flow.Space; switch (node.NodeType) { case ExpressionType.Assign: op = "="; break; case ExpressionType.Equal: op = "=="; break; case ExpressionType.NotEqual: op = "!="; break; case ExpressionType.AndAlso: op = "&&"; beforeOp = Flow.Break | Flow.Space; break; case ExpressionType.OrElse: op = "||"; beforeOp = Flow.Break | Flow.Space; break; case ExpressionType.GreaterThan: op = ">"; break; case ExpressionType.LessThan: op = "<"; break; case ExpressionType.GreaterThanOrEqual: op = ">="; break; case ExpressionType.LessThanOrEqual: op = "<="; break; case ExpressionType.Add: op = "+"; break; case ExpressionType.AddAssign: op = "+="; break; case ExpressionType.AddAssignChecked: op = "+="; isChecked = true; break; case ExpressionType.AddChecked: op = "+"; isChecked = true; break; case ExpressionType.Subtract: op = "-"; break; case ExpressionType.SubtractAssign: op = "-="; break; case ExpressionType.SubtractAssignChecked: op = "-="; isChecked = true; break; case ExpressionType.SubtractChecked: op = "-"; isChecked = true; break; case ExpressionType.Divide: op = "/"; break; case ExpressionType.DivideAssign: op = "/="; break; case ExpressionType.Modulo: op = "%"; break; case ExpressionType.ModuloAssign: op = "%="; break; case ExpressionType.Multiply: op = "*"; break; case ExpressionType.MultiplyAssign: op = "*="; break; case ExpressionType.MultiplyAssignChecked: op = "*="; isChecked = true; break; case ExpressionType.MultiplyChecked: op = "*"; isChecked = true; break; case ExpressionType.LeftShift: op = "<<"; break; case ExpressionType.LeftShiftAssign: op = "<<="; break; case ExpressionType.RightShift: op = ">>"; break; case ExpressionType.RightShiftAssign: op = ">>="; break; case ExpressionType.And: op = "&"; break; case ExpressionType.AndAssign: op = "&="; break; case ExpressionType.Or: op = "|"; break; case ExpressionType.OrAssign: op = "|="; break; case ExpressionType.ExclusiveOr: op = "^"; break; case ExpressionType.ExclusiveOrAssign: op = "^="; break; case ExpressionType.Power: op = "**"; break; case ExpressionType.PowerAssign: op = "**="; break; case ExpressionType.Coalesce: op = "??"; break; default: throw new InvalidOperationException(); } if (parenthesizeLeft) { Out("(", Flow.None); } Visit(node.Left); if (parenthesizeLeft) { Out(Flow.None, ")", Flow.Break); } // prepend # to the operator to represent checked op if (isChecked) { op = string.Format( CultureInfo.CurrentCulture, "#{0}", op ); } Out(beforeOp, op, Flow.Space | Flow.Break); if (parenthesizeRight) { Out("(", Flow.None); } Visit(node.Right); if (parenthesizeRight) { Out(Flow.None, ")", Flow.Break); } } return(node); }
public static Flow LitersPerSecond <T>(this T value) => Flow.FromLitersPerSecond(Convert.ToDouble(value));
public static Flow?MillilitersPerMinute <T>(this T?value) where T : struct => Flow.FromMillilitersPerMinute(value == null ? (double?)null : Convert.ToDouble(value.Value));
public static Flow CubicYardsPerSecond <T>(this T value) => Flow.FromCubicYardsPerSecond(Convert.ToDouble(value));