Tuesday, January 28, 2014

calculate mathematical operation in javascript by html id


You can easily calculate any mathematical expression in JavaScript using the senerio.



  // get element by id value for calculation  
     var NoOfDays = parseFloat(NoOfDays);  
     var MnyGrossSalary = parseFloat(MnyGrossSalary);  
     var ServiceBenefitDay = parseFloat(ServiceBenefitDay);  
     var EarnLeaveDepositedToCompany = parseFloat(EarnLeaveDepositedToCompany);  
     // Calculate your mathematical Expression  
     var totalBenefitDayAmount = ServiceBenefitDay * (MnyGrossSalary / NoOfDays);  
     var totalEarnLeaveAmount = EarnLeaveDepositedToCompany * (MnyGrossSalary / NoOfDays);  
     // Set value of your mathematical expression in your desire html control by id  
     document.getElementById('ServiceBenifitPayment_TotalBenefitDayAmount').value = parseFloat(totalBenefitDayAmount, 10).toFixed(2);  
     document.getElementById('ServiceBenifitPayment_TotalEarnLeaveAmount').value = parseFloat(totalEarnLeaveAmount, 10).toFixed(2);  


how to get html control id from mvc

Let just think that i am using my control with model binding. now i want to get the control id without assign id. how to do that..?


    @Html.TextBoxFor(m => m.ServiceBenifitPayment.ServiceBenefitNoOfDays)  

 its simple just use firebug of Firefox. click on firebug then click








now select your control you will see control id.





Now use this control in script like set value




  document.getElementById('ServiceBenifitPayment_ServiceBenefitNoOfDays').value = ServiceBenefitDay;  



Monday, January 20, 2014

mvc pass value in controller from script



Consider the following example i am firing the script with a list value using for loop table data.

 <a href='#' class="gridEdit" onclick="javascript:return DeleteServiceOut('@Model.EmployeeInformationList[i].GEmployeeGenInfoID.ToString()');"></a>   

the function to pass values to controller from Javascript code in MVC

 <script>  
  function DeleteServiceOut(GEmployeeId) {  
     window.location = "/PMS/Payroll/ServiceOutAdd/ServiceOutDelete/" + GEmployeeId;  
     return false;  
   }  
 </script>  

in to the controller

 public ActionResult ServiceOutDelete(string id, ServiceOutModels model)  
     {  
       // id will contailn the value of parameter  
       // AS you want  
       return View("ServiceOutViewDetails", model);  
     }  


Thursday, January 9, 2014

mvc razor show hide any id based on dropdown



Drop Down
 @Html.DropDownListFor(m => m.AttendenceBonus.BonusIn, new SelectList(Model.BonusInList, "Value", "Text", Model.AttendenceBonus.BonusIn), new { @class = "selectBoxRegular", onchange = "return GetBonusType(this);"})  

Script
 <script>  
   function GetBonusType(ctrl) {  
     var x = $("#AttendenceBonus_BonusIn").val();  
     // hide any control by id  
       if (x == "Fixed") {  
         $('#persent').text("");  
         $('#Applylevel').show();  
         $('#AttendenceBonus_BonusApplyOn').show();  
       }  
      // Show any control by id  
       else {  
         $('#persent').text("%");  
         $('#Applylevel').hide();  
         $('#AttendenceBonus_BonusApplyOn').hide();  
       }  
    }  
 </script>  

Thursday, January 2, 2014

Get the difference between two dates in years,months and days as a string from a SQL Server

Just use the function pass 2 date parameter & get your expected Year/Month/Day
SELECT  [dbo].[fnGetDateDiffAsYMD] ('01/01/2012','02/02/2014')as Duration  





 set ANSI_NULLS ON  
 set QUOTED_IDENTIFIER ON  
 go  
 --SELECT [dbo].[fnGetDateDiffAsYMD] ('01/01/2012','02/02/2013')   
 ALTER FUNCTION [dbo].[fnGetDateDiffAsYMD] (@FromDate AS DateTime,@ToDate AS DATETIME)  
 RETURNS VARCHAR(30)  
 AS  
 BEGIN  
      DECLARE @date datetime,  
                @tmpdate datetime,  
                @years int,  
                @months int,  
                @days int,  
                @exp varchar(30),  
                @mm int,  
                @experiance datetime  
 if (datediff(dd,@FromDate ,@ToDate)< 0) or (@FromDate='') or (@ToDate is null)  
    select @exp ='Invalid joining date'  
 else  
 begin  
    select @experiance=Dateadd(yy,Datediff(yy,@FromDate,@ToDate),@fromDate)  
    select @years=Datediff(yy,@FromDate,@ToDate) - (CASE  
 WHEN @experiance > @ToDate THEN 1  
 ELSE 0  
 END)  
      select @months=Month(@ToDate - @experiance) -1  
      select @days = Day(@ToDate - @experiance) - 1  
 if @years<=0 and @months<=0 and @days<=0  
      set @exp = '0';  
 else if @years<=0  
 begin  
      if @months>0  
 begin  
      if @days>0  
 begin  
      if @months>1  
 begin  
      if @days>1  
      set @exp= CAST(@months as varchar) + ' months' +' and ' + CAST(@days as varchar) + ' Days'  
 else if @days=1  
      set @exp= CAST(@months as varchar) + ' months' +' and ' + CAST(@days as varchar) + ' Day'  
 end  
      else if @months=1  
 begin  
 if @days>1  
      set @exp= CAST(@months as varchar) + ' month' +' and ' + CAST(@days as varchar) + ' Days'  
 else if @days=1  
      set @exp= CAST(@months as varchar) + ' month' +' and ' + CAST(@days as varchar) + ' Day'  
 end  
 end  
 else if @days<=0  
 begin  
 if @months>1  
      set @exp= CAST(@months as varchar) + ' months'  
 else if @months=1  
      set @exp= CAST(@months as varchar) + ' month'  
 end  
 end  
 else if @months<=0  
 if @days>1  
      set @exp = CAST(@days as varchar) + ' Days'  
 else if @days=1  
      set @exp = CAST(@days as varchar) + ' Day'  
 end  
 else if @years>0 and @months>0 and @days>0  
 begin  
  if @years>1  
 begin  
 if @months>1  
 begin  
 if @days>1  
  set @exp= CAST(@years as varchar) +' Years' + ', '+ CAST(@months as varchar) + ' months' +' and ' + CAST(@days as varchar) + ' Days'  
 else if @days=1  
      set @exp= CAST(@years as varchar) +' Years' + ', '+ CAST(@months as varchar) + ' months' +' and ' + CAST(@days as varchar) + ' Day'  
 end  
 else if @months=1  
 begin  
 if @days>1  
 set @exp= CAST(@years as varchar) +' Years' + ', '+ CAST(@months as varchar) + ' month' +' and ' + CAST(@days as varchar) + ' Days'  
 else if @days=1  
 set @exp= CAST(@years as varchar) +' Years' + ', '+ CAST(@months as varchar) + ' month' +' and ' + CAST(@days as varchar) + ' Day'  
 end  
 end  
 else if @years=1  
 begin  
 if @months>1  
 begin  
 if @days>1  
 set @exp= CAST(@years as varchar) +' Year' + ', '+ CAST(@months as varchar) + ' months ' +'and ' + CAST(@days as varchar) + ' Days'  
 else if @days=1  
 set @exp= CAST(@years as varchar) +' Year' + ', '+ CAST(@months as varchar) + ' months ' +'and ' + CAST(@days as varchar) + ' Day'  
 end  
 else if @months=1  
 begin  
 if @days>1  
 set @exp= CAST(@years as varchar) +' Year' + ', '+ CAST(@months as varchar) + ' month ' +'and ' + CAST(@days as varchar) + ' Days'  
 else if @days=1  
 set @exp= CAST(@years as varchar) +' Year' + ', '+ CAST(@months as varchar) + ' month ' +'and ' + CAST(@days as varchar) + ' Day'  
 end  
 end  
 end  
 else if @years>0 and @days>0 and @months<=0  
 begin  
 if(@years>1)  
 begin  
 if(@days>1)  
 set @exp = CAST(@years as varchar) +' Years' +' and ' + CAST(@days as varchar) + ' Days'  
 else if(@days=1)  
 set @exp = CAST(@years as varchar) +' Years' +' and ' + CAST(@days as varchar) + ' Day'  
 end  
 else if(@years=1)  
 begin  
 if(@days>1)  
 set @exp = CAST(@years as varchar) +' Year' +' and ' + CAST(@days as varchar) + ' Days'  
 else if(@days=1)  
 set @exp = CAST(@years as varchar) +' Year' +' and ' + CAST(@days as varchar) + ' Day'  
 end  
 end  
 else if @years>0 and @days<=0 and @months<=0  
 begin  
 if @years>1  
 set @exp = CAST(@years as varchar) +' Years'  
 else if @years=1  
 set @exp = CAST(@years as varchar) +' Year'  
 end  
 else if @years>0 and @days<=0 and @months>0  
 begin  
 if @years>1  
 begin  
 if @months>1  
 set @exp = CAST(@years as varchar) +' Years' +' and ' + cast(@months as varchar) + ' months'  
 else if @months=1  
 set @exp = CAST(@years as varchar) +' Years' +' and ' + cast(@months as varchar) + ' month'  
 end  
 else if @years=1  
 begin  
 if @months>1  
 set @exp = CAST(@years as varchar) +' Year' +' and ' + cast(@months as varchar) + ' months'  
 else if @months=1  
 set @exp = CAST(@years as varchar) +' Year' +' and ' + cast(@months as varchar) + ' month'  
 end  
 end  
 end  
 return @exp  
 END  

you can also use

 SELECT DATEDIFF(DAY, GETDATE(), GETDATE() + 1) AS DayDiff  
 SELECT DATEDIFF(MINUTE, GETDATE(), GETDATE() + 1) AS MinuteDiff  
 SELECT DATEDIFF(SECOND, GETDATE(), GETDATE() + 1) AS SecondDiff  
 SELECT DATEDIFF(WEEK, GETDATE(), GETDATE() + 1) AS WeekDiff  
 SELECT DATEDIFF(HOUR, GETDATE(), GETDATE() + 1) AS HourDiff  

SQL Get all Index create script from Database

To get all script from database as a create new index into another database you can use the following --Get all Index Script SELECT...