Автоматический номер с форматом даты
у меня есть код здесь ...
<pre> If Not dr.HasRows Then penfaktur.Text = "" + Format(Now, "ddMMyyyy") + "NF" + "0001" Else penfaktur.Text = Val(Microsoft.VisualBasic.Mid(dr.Item("no_faktur").ToString, 11, 4)) + 1 If Len(penfaktur.Text) = 1 Then penfaktur.Text = "" + Format(Now, "ddMMyyyy") + "NF000" & penfaktur.Text & "" ElseIf Len(penfaktur.Text) = 2 Then penfaktur.Text = "" + Format(Now, "ddMMyyyy") + "NF00" & penfaktur.Text & "" ElseIf Len(penfaktur.Text) = 3 Then penfaktur.Text = "" + Format(Now, "ddMMyyyy") + "NF0" & penfaktur.Text & "" ElseIf Len(penfaktur.Text) = 4 Then penfaktur.Text = "" + Format(Now, "ddMMyyyy") + "NF" & penfaktur.Text & "" End If End If
Я хочу, чтобы каждая дата меняла номер обратно на" 0001"..
Помоги мне..
экс :
01072017NF0099
01072017NF0100
02072017NF0001 < - - - изменить обратно на NF + 0001 здесь, так как дата изменилась
02072017NF0002
03072017NF0001 < - - - изменить обратно на NF + 0001 здесь, так как дата изменилась
Что я уже пробовал:
If Not dr.HasRows Then penfaktur.Text = "" + Format(Now, "ddMMyyyy") + "NF" + "0001" Else penfaktur.Text = Val(Microsoft.VisualBasic.Mid(dr.Item("no_faktur").ToString, 11, 4)) + 1 If Len(penfaktur.Text) = 1 Then penfaktur.Text = "" + Format(Now, "ddMMyyyy") + "NF000" & penfaktur.Text & "" ElseIf Len(penfaktur.Text) = 2 Then penfaktur.Text = "" + Format(Now, "ddMMyyyy") + "NF00" & penfaktur.Text & "" ElseIf Len(penfaktur.Text) = 3 Then penfaktur.Text = "" + Format(Now, "ddMMyyyy") + "NF0" & penfaktur.Text & "" ElseIf Len(penfaktur.Text) = 4 Then penfaktur.Text = "" + Format(Now, "ddMMyyyy") + "NF" & penfaktur.Text & "" End If End If
Michael_Davies
Вместо того чтобы тестировать длину с таким количеством вложенных If вы могли бы просто;
пенфактур.Текст = "" формат + (теперь, "ддммгггг") + penfaktur.Текст.&Ампер PadLeft("0",4) ; ""
Кроме того, вы используете старые базовые вызовы функций, такие как Val и Mid, когда в файле .Net есть методы и функции для строк.
Не испытывал этого, но просто чтобы показать;
пенфактур.Text = (Целое Число.Синтаксический анализ(др.Пункт("no_faktur").Метод toString.Подстрока(10, 4)) + 1).Метод toString
Кроме того, вы должны быть уверены, что в строке было число, иначе вы получите исключение.
Khabibb Mubarakk
пожалуйста, дайте мне полный код