Example #1
0
        private void menuItemStart_Click(object sender, EventArgs e)
        {
            ADAMobileDataSet.ScheduleRow scheduleRow = _activityRow.ScheduleRowByFK_Activity_Schedule;

            if (scheduleRow.Type == (int)ScheduleType.WorkSystemModel)
            {
                ADAMobileDataSet.ScheduleDataTable scheduleTable  = scheduleRow.Table as ADAMobileDataSet.ScheduleDataTable;
                ADAMobileDataSet.ScheduleRow       newScheduleRow = scheduleTable.NewScheduleRow();
                newScheduleRow.Type     = (int)ScheduleType.WorkSystemInstance;
                newScheduleRow.SymbolId = scheduleRow.SymbolId;
                newScheduleRow.Name     = scheduleRow.Name;
                newScheduleRow.IsActive = true;
                newScheduleRow.rowguid  = Guid.NewGuid();

                ADAMobileDataSet.UserDataTable userTable = scheduleTable.DataSet.Tables["User"] as ADAMobileDataSet.UserDataTable;
                if (userTable.Count > 0)
                {
                    newScheduleRow.UserId = (int)userTable.Rows[0]["UserId"];
                }

                scheduleTable.AddScheduleRow(newScheduleRow);

                ADAMobileDataSet.ActivityRow[]     rows          = scheduleRow.GetActivityRowsByFK_Activity_Schedule();
                ADAMobileDataSet.ActivityDataTable activityTable = _activityRow.Table as ADAMobileDataSet.ActivityDataTable;
                foreach (ADAMobileDataSet.ActivityRow row in rows)
                {
                    ADAMobileDataSet.ActivityRow newRow = activityTable.NewActivityRow();
                    newRow.ScheduleId = newScheduleRow.ScheduleId;
                    newRow.Sequence   = row.Sequence;
                    newRow.Name       = row.Name;
                    newRow.SymbolId   = row.SymbolId;
                    newRow.rowguid    = Guid.NewGuid();
                    activityTable.AddActivityRow(newRow);

                    if (row == _activityRow)
                    {
                        _activityRow = newRow;
                    }
                }
            }

            if (_activityRow.IsExecutionStartNull())
            {
                _activityRow.ExecutionStart = DateTime.Now;
            }
            else
            {
                _activityRow.ExecutionEnd = DateTime.Now;
            }

            DialogResult = DialogResult.OK;
        }