小编Kin*_*mau的帖子

调用本机函数'ISNULL'时参数计数不正确

我有一个查询,我试图从MS SQL Server 2008转换为MySQL.它运行良好的MSSQL,我得到错误" Incorrect parameter count in the call to native function 'ISNULL'".

我该如何解决这个问题?

SELECT DISTINCT
    dbo.`@EIM_PROCESS_DATA`.U_Tax_year,
    dbo.`@EIM_PROCESS_DATA`.U_Employee_ID,
    CASE
        WHEN dbo.`@EIM_PROCESS_DATA`.U_PD_code = 'SYS033' THEN SUM(dbo.`@EIM_PROCESS_DATA`.U_Amount)
    END AS PAYE,
    CASE
        WHEN dbo.`@EIM_PROCESS_DATA`.U_PD_code = 'SYS014' THEN SUM(dbo.`@EIM_PROCESS_DATA`.U_Amount)
    END AS TOTALTAXABLE,
    dbo.OADM.CompnyName,
    dbo.OADM.CompnyAddr,
    dbo.OADM.TaxIdNum,
    dbo.OHEM.lastName + ', ' + ISNULL(dbo.OHEM.middleName, '') + '' + ISNULL(dbo.OHEM.firstName, '') AS EmployeeName
FROM
    dbo.`@EIM_PROCESS_DATA`
        INNER JOIN
    dbo.OHEM ON dbo.`@EIM_PROCESS_DATA`.U_Employee_ID = dbo.OHEM.empID
        CROSS JOIN
    dbo.OADM
GROUP BY dbo.`@EIM_PROCESS_DATA`.U_Tax_year , dbo.`@EIM_PROCESS_DATA`.U_Employee_ID , dbo.OADM.CompnyName , dbo.OADM.CompnyAddr , dbo.OADM.TaxIdNum …
Run Code Online (Sandbox Code Playgroud)

mysql sql-server-2008

17
推荐指数
1
解决办法
4万
查看次数

InvalidOperationException:Sequence包含多个元素

我有以下代码用于工资单程序.第一个字典保存在主数据表中保存的员工ID和相应的基本工资.第二个字典保存员工ID和相应的基本工资,用于工资配件表 - 用于处理.我想更新主表中不匹配的每个员工ID的工资补贴基本工资.(工资变动).

var OHEMDictionary = employees.OrderBy(es => es.empID)
                     .ToDictionary(od => od.empID,
                     od => od.salary);

var SalaryFitmentDictionary = salaryFitments
                              .Where(x => x.U_PD_Code.Trim().ToString() == "SYS001")
                              .OrderBy(es => es.U_Employee_ID)
                              .ToDictionary(od => od.U_Employee_ID,
                                            od => od.U_PD_Amount);

var difference = OHEMDictionary
                .Where(kv => SalaryFitmentDictionary[kv.Key] != kv.Value);

difference.ToList().ForEach(x =>
                    {
                        decimal salary = x.Value.Value;

                        var codeToUpdate = salaryFitments
                                        .Where(y => y.U_Employee_ID.Equals(x.Key))
                                        .Select(z => z.Code)
                                        .SingleOrDefault(); `**<---exception thrown here**`

                        var salaryFitment = salaryFitmentService
                                            .GetSalaryFitment(codeToUpdate);

                        if (salaryFitment != null)
                        {
                            // Save record
                            salaryFitmentService
                           .UpdateSalaryFitment(salaryFitment, salary.ToString());
                        } …
Run Code Online (Sandbox Code Playgroud)

c# visual-studio-2010

7
推荐指数
1
解决办法
3万
查看次数

修改交叉连接查询

我有这个查询,我发现我想要修改以获得额外的列,并总结找到的金额的最后3个月.我想为此制作一份水晶报告.查询如下.

SELECT 
    dbo.[@EIM_PROCESS_DATA].U_Tax_year, 
    dbo.[@EIM_PROCESS_DATA].U_Employee_ID, 
    SUM(dbo.[@EIM_PROCESS_DATA].U_Amount) AS PAYE, 
    dbo.OADM.CompnyName, 
    dbo.OADM.CompnyAddr, 
    dbo.OADM.TaxIdNum, 
    dbo.OHEM.lastName + ', ' + ISNULL(dbo.OHEM.middleName, '') + ' ' + 
        ISNULL(dbo.OHEM.firstName, '') AS EmployeeName, dbo.OHEM.govID

FROM dbo.[@EIM_PROCESS_DATA] 
        INNER JOIN dbo.OHEM ON dbo.[@EIM_PROCESS_DATA].U_Employee_ID 
                                           = dbo.OHEM.empID CROSS JOIN dbo.OADM
WHERE (dbo.[@EIM_PROCESS_DATA].U_PD_code = 'SYS033')

GROUP BY 
    dbo.[@EIM_PROCESS_DATA].U_Tax_year, 
    dbo.[@EIM_PROCESS_DATA].U_Employee_ID, 
    dbo.OADM.CompnyName, 
    dbo.OADM.CompnyAddr, 
    dbo.OADM.TaxIdNum, 
    dbo.OHEM.lastName, 
    dbo.OHEM.firstName, 
    dbo.OHEM.middleName, 
    dbo.OHEM.govID
Run Code Online (Sandbox Code Playgroud)

该表OHEM包含一个字母数字字段U_Process_month,其中包含1月到12月的字符.如上所述查询,SUM(dbo.[@EIM_PROCESS_DATA].U_Amount)给出所有PAYE金额的总计,ie. U_PD_code = 'SYS033'.

我希望有一个查询,根据所选的年份和月份累计过去3个月(PAYE).

我还想检索和额外的列,SUM(dbo.[@EIM_PROCESS_DATA].U_Amount) as TAXABLEPAY where (dbo.[@EIM_PROCESS_DATA].U_PD_code = 'SYS034').

我该如何实现这一目标?任何帮助赞赏.

sql sql-server-2008 crystal-reports-8.5

7
推荐指数
1
解决办法
360
查看次数

MySQL时间戳字段 - 已创建/已修改

我最近决定停止使用MySQL的触发器我createdmodified约会在我的表中的字段因并发症时运行脚本包括在客户端部署的安装文件.

我用这种方式改变了字段:(例子)

alter table users 
modify `created` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00'

alter table users 
modify `modified` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP 
        ON UPDATE CURRENT_TIMESTAMP 
Run Code Online (Sandbox Code Playgroud)

当我现在运行我的程序并填写一个表单来添加数据(表单控件是数据绑定)时,我得到消息"列'创建'不允许空值".

在现有数据上,当我尝试更新时,修改日期根本不会改变.

我查看了许多文章,例如在MySQL 4.0中同时拥有Created和Last Updated时间戳列但无法找到解决方案.

我该如何解决这个问题?

我正在使用MySQL v 5.6.15.0

mysql

7
推荐指数
2
解决办法
9231
查看次数

字符串格式化为货币 C#

我是在 ASP.NET 中构建 Web 应用程序的新手,并且正在尝试以肯尼亚先令显示货币。先令的符号是 KES。

我有这个:

<span>
    <b>Price: </b><%#:String.Format(new System.Globalization.CultureInfo("sw-KE"), "{0:c}", Item.BeatPrice)%> 
</span>
Run Code Online (Sandbox Code Playgroud)

文化名称来自http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo%28v=vs.80%29.aspx

但是,价格显示为S3,000而不是KES 3,000

我需要做什么才能正确格式化价格?

c# asp.net

5
推荐指数
1
解决办法
1453
查看次数

SQL - 返回累积每月列值

我有这个SQL查询,我用它来查找每个帐户每月的试算平衡移动.

/* Fixed Assets 1 */
SELECT * FROM
(
    SELECT T0.AcctCode AS 'SAP Code', T0.AcctName AS 'Description', 
    MONTH(T1.RefDate) AS Month, SUM(T1.Debit - T1.Credit) AS 'Amount'
    FROM OACT T0
    LEFT JOIN JDT1 T1 ON T0.[AcctCode] = T1.[Account] 
    WHERE T0.AcctCode LIKE '111%' AND T0.Levels = 5
    AND (T1.RefDate BETWEEN DATEADD(yy, DATEDIFF(yy,0,{?AsAtDate}), 0) AND {?AsAtDate}) 
    GROUP BY T0.AcctCode, T0.AcctName, T0.FatherNum, T1.RefDate) AS q
    PIVOT
(
SUM(Amount) 
FOR [Month] IN ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12])
) AS query
Run Code Online (Sandbox Code Playgroud)

这将从6月返回以下结果:

在此输入图像描述

我想包括所有行的累计月度结果,以便第1行结果应为:

1, 111110, Building Gross Value, 633604.23, 637764.23, …
Run Code Online (Sandbox Code Playgroud)

sql-server-2012

5
推荐指数
1
解决办法
356
查看次数

C#错误"字符串未被识别为有效的DateTime"

我试图以"yyyyMMdd"格式保存DateTime.Now

我有这个代码

string todaysDate = DateTime.Now.ToString();
Run Code Online (Sandbox Code Playgroud)

...

U_Date_of_PD_added = GetDateFromString(todaysDate) 
Run Code Online (Sandbox Code Playgroud)

// U_Date_of_PD_added是日期时间数据库字段

...

//Method to get date from string
private DateTime GetDateFromString(string dateString)
{
   string format = "yyyyMMdd";
   return DateTime.ParseExact(dateString, format, CultureInfo.InvariantCulture);
}
Run Code Online (Sandbox Code Playgroud)

我一直收到错误"字符串未被识别为有效的DateTime".因为它试图解析.可能有什么不对?

我不在乎是否节省时间,我宁愿00:00:00.000

c#

4
推荐指数
1
解决办法
2727
查看次数

在Datagridview中插入时出错

我有一个带有"Code"列的usersdataTable我设置为PK并在MySql DB中自动递增"true".

我希望用户在数据网格视图上填写名字,姓氏,用户名等的值,但不能输入代码值.

我有这个代码用于更新/插入:

private void usersBindingNavigatorSaveItem_Click(object sender, EventArgs e)
{
    try
    {
        if (dgvUsers.RowCount > 0)
        {
            for (int i = 1; i <= dgvUsers.RowCount; i++)
            {
                var code = dgvUsers.Rows[i].Cells[0].Value.ToString();

                if (code == string.Empty)
                {
                    // add users                         
                    this.usersTableAdapter.Insert(
                        dgvUsers.Rows[i].Cells[1].Value.ToString(),
                        dgvUsers.Rows[i].Cells[2].Value.ToString(),
                        dgvUsers.Rows[i].Cells[3].Value.ToString(),
                        GlobalClass.MD5Hash(dgvUsers.Rows[i].Cells[4].Value.ToString()),
                        DateTime.Now,
                        null
                        );
                }
                else
                {
                    // edit users                         
                    this.usersTableAdapter.Update(this.eko_payrollDataSet.users);
                }
            }
        }

        MessageBox.Show("Details Updated Successfully");
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}     
Run Code Online (Sandbox Code Playgroud)

表结构:

Code      int        NN      PK   Autoincrement
firstName Varchar    NN
lastName  Varchar …
Run Code Online (Sandbox Code Playgroud)

c# mysql datagridview visual-studio-2012

4
推荐指数
1
解决办法
922
查看次数

从ASP代码后面将参数传递给Javascript函数

我有一个漫长的过程,我想向用户显示一个进度条,我将参数(百分比)传递给我的带有母版页的Webform中的Javascript函数.

我有这个:

<script type="text/javascript"> 
        function updateProgress(percentage) {          
            document.getElementById('ProgressBar').style.width = percentage+"%";
        }
</script>
Run Code Online (Sandbox Code Playgroud)

和:

<div class="progress progress-striped active progress-success" style="height: 43px">
      <div id="ProgressBar" class="progress-bar" role="progressbar" runat="server"
          aria-valuemin="0" aria-valuemax="100" style="width: 0%">
      </div>
</div>
Run Code Online (Sandbox Code Playgroud)

在我的代码隐藏中,我有这个将参数传递给函数:

// Report progress >> ~ 18%                   
string updateProgress = "18";
ClientScript.RegisterStartupScript(this.GetType(), "updateProgress", "updateProgress('" + updateProgress + "');", true);
Run Code Online (Sandbox Code Playgroud)

当我运行代码时,进度条永远不会从0%移动.我想通过使用新参数再次调用函数来继续更新代码后面的百分比完成,直到达到100%.

我浏览过论坛,但我无法看到我需要做些什么才能让它发挥作用.

有任何想法吗?

javascript c# asp.net webforms

4
推荐指数
1
解决办法
3万
查看次数

operator' - '不能应用于'decimal'类型的操作数和'Systems.Collections.Generic.IEnumerable <decimal>

我有这个错误,我想要解决.

Visual Studio 2010将错误指定为:

operator '-' cannot be applied to operands of type 'decimal' and 'Systems.Collections.Generic.IEnumerable<decimal>
Run Code Online (Sandbox Code Playgroud)

我的代码:

// Step 5: Retrieve MPR amount and deduct form Gross Tax Dictionary Per-Employee

                //Query database
                var taxtable = taxTableService.GetAllTaxTables();

                var mprAmount = (from tt in taxtable select tt.U_MPR_amount).Distinct();

                Dictionary<int, decimal> paye = new Dictionary<int, decimal>();

                grossTaxDictionary.ToList().ForEach(x =>
                {
                    var totalPAYE = x.Value - mprAmount;

                    paye.Add(x.Key, totalPAYE);

                });
Run Code Online (Sandbox Code Playgroud)

在我的数据库中,字段U_MPR_amount是小数,因此是x.Value.

错误显示在该行上 x.Value - mprAmount;

可能是什么问题呢?任何帮助赞赏.

c# visual-studio-2010

3
推荐指数
1
解决办法
2425
查看次数