2014-12-30 38 views
0

我有一个包含员工详细信息的表格,该表格还列出了每种类型的雇员有多少叶子有雇员。该表脚本为:如何为特定日期的列安排自动增量

CREATE TABLE [dbo].[Employee] 
(
    [emp_ID] [numeric](18, 0) IDENTITY(1,1) NOT NULL, 
    [username] [nvarchar](50) NOT NULL, 
    [emp_name] [nvarchar](max) NOT NULL, 
    [gender] [nvarchar](max) NOT NULL, 
    [password] [nvarchar](max) NOT NULL, 
    [pay_roll_num] [nvarchar](max) NOT NULL, 
    [designation] [nvarchar](max) NOT NULL, 
    [earned_leave] [numeric](18, 0) NOT NULL, 
    [halfpay_leave] [numeric](18, 0) NOT NULL, 
    [casual_leave] [numeric](18, 0) NOT NULL,  
    [primary_address] [nvarchar](max) NOT NULL, 
    [primary_phone] [nvarchar](max) NOT NULL, 
    [email_ID] [nvarchar](max) NOT NULL, 
    [manager_ID] [nvarchar](max) NOT NULL, 

    CONSTRAINT [PK_Employee] PRIMARY KEY CLUSTERED ([username] ASC) 
     WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,   
      ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY] 
TEXTIMAGE_ON [PRIMARY] 

我使用Visual Studio 2013旗舰版和SQL Server 2014

问题1:现在
,则要求每年的1月1日和12年7月1日每笔员工在收入和半薪类别中的账户都会被记入贷方。这些被转发。

例如,如果农行有

Earned Leave = 20 
Half-Pay Leave = 10 

然后在午夜年度变化和1月1日开始,汽车增量应该发生,导致,

Earned Leave = 50 
Half-Pay Leave = 40 

我试图通过使这样做的Page_Load事件的管理方一个简单的函数,比较01/01返回的id datetime.now,如果是,则增加。但后来我意识到,每当管理员登录上述两个日期时,都会发生这种情况。任何其他方法或页面,我想这样做,要求应用程序开始,而我希望这发生在后端没有任何人为干预。

问题2:
管理员应显示每个用户帐户中发生的叶子的信用和借记记录,如日志。如何以gridview或表格或任何方式显示此内容? 实施例,在管理日志和选择一个员工名字查看其假资产负债表,它应该看起来像下面(具有相同类型的细节各种叶片)

Employee name: Abc Designation: Xyz Date of joining: 01/01/2008 **Credit Leaves** 

        Earned Leave 
    Credit for  Leave Availed  No. of Days 
        From To   D  C  Balance 
    1/1/12       12   50 
        7/4 10/4  4   46 
    1/7/12         12 58 
        13/08 23/08  11   47      
        04/09 08/09  05   42 
    23/10  Leave Encashment  10   32 
    1/1/13         12 34 
    1/7/13         12 46 
        22/12 31/12  10   36  
    1/1/14         12 48 

如,上述临时表格显示,一定数量的叶子将在特定日期和休假时被记入。 现在,管理员应该能够在员工兑现叶子时添加叶子,方法是单击信用树叶按钮(增强文本)。另外,应该显示年度日志,并在变化的年份中显示当年的日志。

我绝对不知道如何在gridview中做这种日志发布。请帮帮我。

+0

您可能需要使用SQL Server服务做到这一点。 – Mairaj

+0

您的答案是:SQL代理作业。 –

回答

0

你有一些选择:

  1. SQL代理作业 - 你可以在指定的日期,如果配置,以便运行特定存储过程或反复。请参阅http://msdn.microsoft.com/en-IN/library/ms189237.aspx

  2. 称为“Hangfire”的ASP.NET程序包可在Hangfire.io处获得 - 它在NuGET上已有详细记录并可用。

有很多人,但是这两个是非常可靠的

+0

谢谢你的链接,我一定会试试这个。但这是否也解决了日志显示问题? – avneesh