Public Function CommaSeparatedAmt(ByVal Amount As String) As String
Dim strAmt As String = ""
Dim s As String = ""
Dim s1 As String = ""
Dim s2 As String = ""
Dim AmtString As String
Dim DecAmt As String
If Amount.Contains(".") Then
Dim strArr As String() = Split(Amount, ".")
AmtString = strArr(0)
DecAmt = strArr(1)
Else
AmtString = Amount
DecAmt = "00"
End If
Select Case AmtString.Length
Case Is < 4
strAmt = AmtString
Case 4
s = AmtString.ToString.Substring(0, 1)
s1 = AmtString.ToString.Substring(1, 3)
strAmt = s + "," + s1
Case 5
s = AmtString.ToString.Substring(0, 2)
s1 = AmtString.ToString.Substring(2, 3)
strAmt = s + "," + s1
Case 6
s = AmtString.ToString.Substring(0, 1)
s1 = AmtString.ToString.Substring(1, 2)
s2 = AmtString.ToString.Substring(3, 3)
strAmt = s + "," + s1 + "," + s2
Case 7
s = AmtString.ToString.Substring(0, 1)
s1 = AmtString.ToString.Substring(1, 3)
s2 = AmtString.ToString.Substring(4, 3)
strAmt = s + "," + s1 + "," + s2
Case 8
s = AmtString.ToString.Substring(0, 2)
s1 = AmtString.ToString.Substring(2, 3)
s2 = AmtString.ToString.Substring(5, 3)
strAmt = s + "," + s1 + "," + s2
Case 9
s = AmtString.ToString.Substring(0, 3)
s1 = AmtString.ToString.Substring(3, 3)
s2 = AmtString.ToString.Substring(6, 3)
strAmt = s + "," + s1 + "," + s2
Case Else
strAmt = AmtString
End Select
Return strAmt & "." & DecAmt
End Function
All query regarding the .Net programming. Find the solution of all the problems regarding coding.
Convert amount in words
Public Class ClsRupees
Public Function Return_Rupee_String(ByVal Number As Double) As String
Dim IntNumber As Long
Dim FloatNumber As Decimal
If Int(Number) <> Number Then
IntNumber = Int(Number)
FloatNumber = Format((Number - IntNumber), "0.00") * 100
Return_Rupee_String = Convert_To_String(IntNumber)
Return_Rupee_String = UCase("Rs. " + " " + Return_Rupee_String + " AND " & " Paise " & " " + Convert_To_String(FloatNumber) + " Only/-")
Else
Return_Rupee_String = UCase("Rs. " + " " + Convert_To_String(Number) + " Only / -")
End If
End Function
Public Function Convert_To_String(ByVal Number As Double) As String
Dim Cr, La, Th, Hu, Te As Integer
Dim RString As String
Dim sFraction As Long
Dim Fracpos As Long
RString = ""
Number = Math.Abs(Number)
Fracpos = InStr(1, Trim(Number), ".")
If Fracpos > 0 Then
sFraction = Mid(Trim(Number), Fracpos + 1, Len(Trim(Number) - Fracpos))
End If
If Number >= 10000000 Then
Cr = Number \ 10000000
Number = Number Mod 10000000
RString = RString + Return_String(Int(Cr)) + " " + "CRORE "
End If
If Number >= 100000 Then
La = Number \ 100000
Number = Number Mod 100000
RString = RString + Return_String(Int(La)) + " " + "LAKH "
End If
If Number >= 1000 Then
Th = Number \ 1000
Number = Number Mod 1000
RString = RString + Return_String(Int(Th)) + " " + "THOUSAND "
End If
If Number >= 100 Then
Hu = Number \ 100
Number = Number Mod 100
RString = RString + Return_String(Int(Hu)) + " " + "HUNDRED "
End If
If Number < 100 Then
Te = Number
RString = RString + Return_String(Int(Te))
End If
If Val(sFraction) <> 0 Then
If Val(Left(sFraction, 1)) <> 0 Then
If Val(sFraction) < 10 Then
RString = RString + " AND " + Trim(Get_Paise(Val(sFraction * 10)))
Else
RString = RString + " AND " + Trim(Get_Paise(Val(sFraction)))
End If
Else
RString = RString + " AND " + Trim(Get_Paise(Val(sFraction)))
End If
End If
Convert_To_String = RString
End Function
Public Function Return_String(ByVal PassNum As Decimal) As String
Dim TaRupee As New DSRupeesTableAdapters.RupeesTableAdapter
Dim RupeeTable As New DSRupees.RupeesDataTable
RupeeTable = TaRupee.GetDataByAmount(PassNum)
If RupeeTable.Rows.Count > 0 Then
Return_String = RupeeTable(0).AmountString.ToString()
Else
Return_String = Under_Hundred_String(PassNum)
End If
RupeeTable.Dispose()
TaRupee.Dispose()
End Function
Private Function Under_Hundred_String(ByVal num As Integer) As String
Dim FirstString As String = ""
Dim SecondString As String = ""
Dim FirstPart As Integer
Dim SecondPart As Integer
Dim RsTable As New DSRupees.RupeesDataTable
Dim TARupees As New DSRupeesTableAdapters.RupeesTableAdapter
FirstPart = (Int(num / 10) * 10)
SecondPart = (num - FirstPart)
'-----------------
RsTable = TARupees.GetDataByAmount(Decimal.Parse(FirstPart))
If RsTable.Rows.Count > 0 Then
FirstString = RsTable(0).AmountString.ToString()
End If
'-----
RsTable = TARupees.GetDataByAmount(Decimal.Parse(SecondPart))
If RsTable.Rows.Count > 0 Then
SecondString = RsTable(0).AmountString.ToString()
End If
Under_Hundred_String = FirstString + " " + SecondString
End Function
Private Function Get_Paise(ByVal Number As Double) As String
Dim Cr As Double
Dim La As Double
Dim Th As Double
Dim Hu As Double
Dim Te As Double
Dim RString As String = ""
If Number >= 10000000 Then
Cr = Number / 10000000
Number = Number Mod 10000000
RString = RString + Trim(Return_String(Int(Cr))) + " " + "CRORE "
End If
If Number >= 100000 Then
La = Number / 100000
Number = Number Mod 100000
RString = RString + Trim(Return_String(Int(La))) + " " + "LAKH "
End If
If Number >= 1000 Then
Th = Number / 1000
Number = Number Mod 1000
RString = RString + Trim(Return_String(Int(Th))) + " " + "THOUSAND "
End If
If Number >= 100 Then
Hu = Number / 100
Number = Number Mod 100
RString = RString + Trim(Return_String(Int(Hu))) + " " + "HUNDRED "
End If
If Number < 100 Then
Te = Number
RString = RString + Trim(Return_String(Int(Te)))
End If
Get_Paise = RString
End Function
End Class
Public Function Return_Rupee_String(ByVal Number As Double) As String
Dim IntNumber As Long
Dim FloatNumber As Decimal
If Int(Number) <> Number Then
IntNumber = Int(Number)
FloatNumber = Format((Number - IntNumber), "0.00") * 100
Return_Rupee_String = Convert_To_String(IntNumber)
Return_Rupee_String = UCase("Rs. " + " " + Return_Rupee_String + " AND " & " Paise " & " " + Convert_To_String(FloatNumber) + " Only/-")
Else
Return_Rupee_String = UCase("Rs. " + " " + Convert_To_String(Number) + " Only / -")
End If
End Function
Public Function Convert_To_String(ByVal Number As Double) As String
Dim Cr, La, Th, Hu, Te As Integer
Dim RString As String
Dim sFraction As Long
Dim Fracpos As Long
RString = ""
Number = Math.Abs(Number)
Fracpos = InStr(1, Trim(Number), ".")
If Fracpos > 0 Then
sFraction = Mid(Trim(Number), Fracpos + 1, Len(Trim(Number) - Fracpos))
End If
If Number >= 10000000 Then
Cr = Number \ 10000000
Number = Number Mod 10000000
RString = RString + Return_String(Int(Cr)) + " " + "CRORE "
End If
If Number >= 100000 Then
La = Number \ 100000
Number = Number Mod 100000
RString = RString + Return_String(Int(La)) + " " + "LAKH "
End If
If Number >= 1000 Then
Th = Number \ 1000
Number = Number Mod 1000
RString = RString + Return_String(Int(Th)) + " " + "THOUSAND "
End If
If Number >= 100 Then
Hu = Number \ 100
Number = Number Mod 100
RString = RString + Return_String(Int(Hu)) + " " + "HUNDRED "
End If
If Number < 100 Then
Te = Number
RString = RString + Return_String(Int(Te))
End If
If Val(sFraction) <> 0 Then
If Val(Left(sFraction, 1)) <> 0 Then
If Val(sFraction) < 10 Then
RString = RString + " AND " + Trim(Get_Paise(Val(sFraction * 10)))
Else
RString = RString + " AND " + Trim(Get_Paise(Val(sFraction)))
End If
Else
RString = RString + " AND " + Trim(Get_Paise(Val(sFraction)))
End If
End If
Convert_To_String = RString
End Function
Public Function Return_String(ByVal PassNum As Decimal) As String
Dim TaRupee As New DSRupeesTableAdapters.RupeesTableAdapter
Dim RupeeTable As New DSRupees.RupeesDataTable
RupeeTable = TaRupee.GetDataByAmount(PassNum)
If RupeeTable.Rows.Count > 0 Then
Return_String = RupeeTable(0).AmountString.ToString()
Else
Return_String = Under_Hundred_String(PassNum)
End If
RupeeTable.Dispose()
TaRupee.Dispose()
End Function
Private Function Under_Hundred_String(ByVal num As Integer) As String
Dim FirstString As String = ""
Dim SecondString As String = ""
Dim FirstPart As Integer
Dim SecondPart As Integer
Dim RsTable As New DSRupees.RupeesDataTable
Dim TARupees As New DSRupeesTableAdapters.RupeesTableAdapter
FirstPart = (Int(num / 10) * 10)
SecondPart = (num - FirstPart)
'-----------------
RsTable = TARupees.GetDataByAmount(Decimal.Parse(FirstPart))
If RsTable.Rows.Count > 0 Then
FirstString = RsTable(0).AmountString.ToString()
End If
'-----
RsTable = TARupees.GetDataByAmount(Decimal.Parse(SecondPart))
If RsTable.Rows.Count > 0 Then
SecondString = RsTable(0).AmountString.ToString()
End If
Under_Hundred_String = FirstString + " " + SecondString
End Function
Private Function Get_Paise(ByVal Number As Double) As String
Dim Cr As Double
Dim La As Double
Dim Th As Double
Dim Hu As Double
Dim Te As Double
Dim RString As String = ""
If Number >= 10000000 Then
Cr = Number / 10000000
Number = Number Mod 10000000
RString = RString + Trim(Return_String(Int(Cr))) + " " + "CRORE "
End If
If Number >= 100000 Then
La = Number / 100000
Number = Number Mod 100000
RString = RString + Trim(Return_String(Int(La))) + " " + "LAKH "
End If
If Number >= 1000 Then
Th = Number / 1000
Number = Number Mod 1000
RString = RString + Trim(Return_String(Int(Th))) + " " + "THOUSAND "
End If
If Number >= 100 Then
Hu = Number / 100
Number = Number Mod 100
RString = RString + Trim(Return_String(Int(Hu))) + " " + "HUNDRED "
End If
If Number < 100 Then
Te = Number
RString = RString + Trim(Return_String(Int(Te)))
End If
Get_Paise = RString
End Function
End Class
Subscribe to:
Posts (Atom)