64位系统问题 [英] 64 bit system problem

查看:62
本文介绍了64位系统问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在库存条目中更新NoOfSoldShares以下功能。

此功能在32位系统中完美运行,

但在64位系统NoOfSoldShares不更新。



becoz的一些64位相关问题此功能不起作用,

但是我没有64位系统来检查问题...



所以请帮助我解决问题...如果有人对此有所了解...



我尝试过:



I have make below fuction which update NoOfSoldShares in Stock Entry.
this function work perfectly in 32 bit system,
but in 64 bit system NoOfSoldShares not update.

becoz of some 64 bit related issue this function not working,
but i have not 64 bit system to check for problem...

so please help me for issue...if any one has idea about this...

What I have tried:

public static void UpdateStockEntry()
        {
            try
            {
                string Query = "select concat('C',CompanyCode,myear,'SHARE_MKT')  AS Databasename,CompanyCode,myear \n" +
                    "from yearmaster y inner join  companymaster c on y.CompanyAuto=c.autotrno order by myear,CompanyCode asc";
                DataTable database = Program.GetDataTable(Query, Program.SysConn);
                DataTable SysDB = Program.GetDataTable("Select DISTINCT TABLE_SCHEMA  from information_schema.TABLES where TABLE_SCHEMA like '%SHARE_MKT%' ", Program.Conn);
                if (database.Rows.Count > 0)
                {
                    for (int j = 0; j < database.Rows.Count; j++)
                    {
                        string Databasename = database.Rows[j]["Databasename"].ToString();
                        SysDB.DefaultView.RowFilter = "";
                        SysDB.DefaultView.RowFilter = "TABLE_SCHEMA='" + Databasename + "'";

                        if (SysDB.DefaultView.Count > 0)
                        {
                            decimal DbYear = decimal.Parse(database.Rows[j]["myear"].ToString());
                            decimal PrevYear = DbYear - 1;

                            //string CurrYear = Program.ToDate.Year.ToString();
                            string PrevDatabasename = Databasename.Replace(DbYear.ToString(), PrevYear.ToString());
                            SysDB.DefaultView.RowFilter = "";
                            SysDB.DefaultView.RowFilter = "TABLE_SCHEMA='" + PrevDatabasename + "'";

                            if (SysDB.DefaultView.Count > 0)
                            {
                                 Program.Execute("update " + Databasename + ".StockEntry s\n" +
                                 ", " + PrevDatabasename + ".StockEntry sb\n" +
                                 "set s.OpeningIssueShare=ifnull(sb.NoofSoldShares,0)\n" +
                                 "where sb.autotrno=s.autotrno", Program.Conn);
                            }

                            if (Databasename != "")
                            {
                                Program.Execute("update " + Databasename + ".StockEntry set NoofSoldShares=ifnull(OpeningIssueShare,0)", Program.Conn);

                                Program.Execute("update " + Databasename + ".StockEntry s\n" +
                               ",(select AgainstAuto,sum(SubQty) SubQty from " + Databasename + ".salesentrysub group by AgainstAuto) sb\n" +
                               "set NoofSoldShares=ifnull(NoofSoldShares,0)+ifnull(SubQty,0)\n" +
                               "where sb.AgainstAuto=s.autotrno", Program.Conn);
                            }
                        }
                    }
                }
            }
            catch (Exception)
            {
                //throw;
            }
        }

推荐答案

您好,

只是为了确定:是你在32位机器上编译64位?如果是这样,请确保在32位计算机上安装x64位编译器,因为默认情况下它们未安装
Hello,
only to be sure: are you compiling 64bit on a 32bit machine? If so just make sure that x64 bit compilers are installed on your 32-bit machine because they're not installed by default


这篇关于64位系统问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆