Восстановление ВВБ гибрида — Honda Civic, Lexus, Toyota

Восстановить
элемент высоковольтной батареи, который выработал свой ресурс, не представляется
возможным. Но бывают случаи, когда он теряет свои свойства преждевременно, и
существуют технологии, позволяющие сделать восстановление ВВБ.

Возможность
и эффективность этого зависит от многих факторов, один из которых – химический
состав элементов высоковольтной батареи.

Восстановление ВВБ на основе лития

Восстановление
Li-ion возможно только в одном
случае: если элементы случайно попали в глубокий разряд и при этом не
находились в нем слишком долго.

Обычная
зарядка навсегда убьет их емкость. Для восстановления литиевой ВВБ нужны
специальные токи по специальной программе. Вот пример из нашей практики:

Восстановление
ВВБ из 22 элементов Winston
60Ah в
глубоком разряде.


12 элементов восстановили свои 100% емкости;


3 элемента – 90% и выше;


4 элемента – от 80 до 89%;


2 элемента 73% и 75%;

один
– только 24%.  

Восстановление ВВБ на основе никеля

Восстановление
NiMH
(Никель-металл-гидрид) мы делаем довольно часто. И оно возможно в двух случаях:

  1. По причине разряда. Чаще всего это происходит при неисправности ДВС, когда водитель гибрида пытается доехать на батарее. Если после этого Вы быстро, в течение одного-двух дней, доставите автомобиль (или его ВВБ) к нам, то восстановится 100% емкости.
  2. Из-за эффекта памяти, который есть у батарей на основе никеля. Конечно, у NiMH элементов он сведен к минимуму, но за долгие годы службы эффект памяти может проявиться и уменьшить емкость.

Второе относится прежде всего к гибриду Хонда Цивик второго поколения. В интернете есть много информации о восстановлении ВВБ Honda Civic hybrid «прокачкой», «массажем», «балансировкой» и т.д. Под этими разными терминами подразумевается одно: несколько циклов заряда и разряда, благодаря которым убирается вышеуказанный эффект памяти.

При таком восстановлении ВВБ Хонда важно следующее:

  • Восстановление ВВБ эффективно,
    если батарея еще ни разу не ремонтировалась.
  • Перезаряд недопустим. Применять
    можно только цифровые зарядные устройства для NiMH, способные отключить заряд по
    скачку напряжения в несколько милливольт.
  • Очень важно полностью
    разрядить элементы, но не превысить порог разряда. Для этого мы изготовили
    специальный стенд, который в конце разряда плавно уменьшает ток до нуля, тем
    самым бережно подводя элементы вплотную к порогу разряда. Устройства типа iMAX для этого не сильно подходят,
    потому что в конце разряда они резко отключаются.
  • Целесообразность восстановления
    ВВБ мы оцениваем после первого цикла, иногда после второго. Мы сразу
    связываемся с клиентом и предлагаем либо продолжить восстановление, либо
    сделать ремонт ВВБ с заменой определенных элементов.
  • Эффективность восстановления
    точно предсказать невозможно. Многие владельцы после такой процедуры уже больше
    года не знают проблем с батареей. Однако бывали случаи, когда ошибка снова
    загоралась через 6 месяцев.

Восстановление высоковольтной батареи гибрида

Стоимость
восстановления ВВБ Хонда 5000 грн. Гарантии следующие:

  • если ошибка по ВВБ загорится
    ранее, чем через 3 месяца, то мы повторяем процедуру за наш счет;
  • если же от трех до шести месяцев
    – мы повторяем ее за 50% стоимости;

либо даем соответствующие скидки на ремонт данной ВВБ.

Toyota Prius. Высоковольтная батарея (HV Battery)



TOYOTA PRIUS HV Battery


Сегодня поговорим о высоковольтной батарее автомобиля Prius. Но для начала посмотрим на общую схему этого автомобиля.


Как Вы видите, устройство достаточно простое:


1. Двигатель внутреннего сгорания


2. Electric motor – MG 2


3. Generator – MG 1


4. Редуктор и планетарная передача


5. Блок управления


6. Батарея – HV battery


Знание «общего» устройства необходимо, потому что в «народе» частенько бытует и такое название автомобиля Prius, как «электромобиль».


Что является в корне неверным определением.


И почему: сама по себе батарея автомобиля Prius не является основным «движущим устройством», HV battery – это своеобразный «демпфер», куда постоянно запасается лишняя энергия, произведенная двигателем внутреннего сгорания и потом «отдается» в тот момент, который определяется бортовым компьютером автомобиля.


Давайте вспомним, как и насколько эффективно работает «обычный» автомобиль с двигателем внутреннего сгорания.


Если ДВС работает на ХХ, то практически вся произведенная им энергия постоянно выделяется в тепло.


При движении «накатом» — тоже.


И только когда педаль нажата «в пол», только в этот момент двигатель «выдает» всю свою мощность и вся произведенная им энергия используется практически полностью.


Инженеры Toyota решили сделать по-другому.


В результате многолетних исследований и экспериментов они поняли, что для массового потребителя совсем необязательно иметь мощный бензиновый двигатель. Кроме того, на первом месте стояли вопросы экологии.


Они резко «занизили» мощность двигателя внутреннего сгорания до «достаточной», а недостающую мощность для «передвижения» автомобиля решили брать от электромотора. На фото вверху — справа как раз и показан один из таких исследовательских экспериментов.


Батарея Prius (HV battery) служит не для передвижения автомобиля, она служит демпфером, своеобразным «складом энергии».


Например, если автомобиль Prius двигается на скорости 50 км. час, двигатель выделяет «избыточную» энергию – она «запасается» в батарею.


Начинаем тормозить, здесь тоже образуется «лишняя» энергия – она тоже «запасается» в батарею.


Стоит на месте – без необходимости, мотор заглушен и расходуется энергия с тяговой ВВБ, если нужно прогреть ДВС или салон, то выделяемая энергия запасается в ВВБ.


И так происходит всегда, когда бортовой компьютер определяет «избыток» энергии и начинает «запасать» её впрок.


Но если начинаем движение и нам надо резко ускориться – тут уже бортовой компьютер «понимает», что одной энергии ДВС недостаточно и начинает ему помогать: энергия из HV Battery используется для работы электромотора MG 2.


Скажем определеннее: на автомобиле Prius «езда на батарее» — побочный эффект. И нежелательный без использования бензинового двигателя.


Для Prius, в принципе, не очень важно, какой двигатель внутреннего сгорания установлен, главное, что бы был «источник энергии».


Основные неисправности HV battery


На фото внизу показаны все имеющиеся на данный момент элементы высоковольтной батареи автомобилей Prius. Сверху — вниз: элементы HV battery


— 10 кузов


— 11 кузов


— 20 кузов.


Название батарей «бамбуки» пошло как раз от внешнего вида батарей первого Prius в 10 кузове.


Обслуживание HV battery


Как ни странно, но обслуживание высоковольтной батареи надо начинать не с багажника, где она установлена, а…с подкапотного пространства автомобиля. Ничего удивительного, если еще раз вспомнить то, о чем говорили выше:


«Батарея Prius не является основным «движущим средством». Она «склад энергии». А двигатель внутреннего сгорания и является основным источником энергии для HV battery.


И если ДВС работает плохо, «не выдает» своих характеристик по мощности, крутящему моменту, то и батарея будет жить в «обедненном режиме».


Простой пример: приезжает в мастерскую Клиент и говорит: «Поменяйте мне «батарейку», совсем перестала заряжаться».


Клиента остановили: «Давайте проведем Диагностику и постараемся найти причину «незаряжаемости батарейки».


И нашли.


Как всегда, все оказалось банально и просто: воздушный фильтр ДВС был настолько забит грязью, тополиным пухом и чем-то еще, что совсем не давал двигателю «дышать».


Вот вам и причина того, что «батарейка не заряжалась». Откуда ей брать «энергию», если мощности двигателя внутреннего сгорания едва-едва хватало что бы «просто жить» самому.


И таких примеров множество. Поэтому:


— Прежде чем «приговаривать» HV battery,- попытайтесь сначала найти причину того, почему «нет заряда» или почему «машина не едет».


Высоковольтная батарея автомобиля Prius «боится» сварочных работ. Надо помнить, что в багажнике стоит не только одна высоковольтная батарея. Там еще есть Battery ECU, System main relay, которые, как и другие электронные устройства, «плохо переносят» и сварочные работы, и высокую температуру. Если такие работы планируется проводить, то правильнее


всего будет HV battery снять и унести в соседнее помещение. На фото справа это показано.


За время работы с «гибридами», в мастерской В. Когута было «осознано» несколько «законов гибридной техники». Не улыбайтесь, они есть, и они правильные, что подтверждается многолетней практикой работы.


Законы гибридной техники:


1. Не ездить без бензина


2. Не ремонтировать автомобиль самостоятельно


3. Не оставлять автомобиль надолго на стоянке


«Не ездить без бензина»


Человек, который купил «гибрид» и не знает «Законов гибридной техники», наверняка и сам восторгался, и восторгал своих друзей, показывая, как машина ездит только на электродвигателе. Тихо, бесшумно, просто сказка…


И откуда ему знать, что работа этого автомобиля подчинена строгим и незыблемым физическим законам: автомобильный компьютер постоянно следит за тем, что бы во время работы HV battery никогда не разряжалась ниже 30% от своей ёмкости и не заряжалась свыше 70% (основной режим, о других поговорим позже).


Разработчик этой батареи, фирма Panasonic, применила «закрытую» технологию и даёт для этой батареи 5.000.000 циклов «заряд-разряд».


И в основном на панели приборов уровень заряда всегда стоит на 50% — что есть «норма» и не является чем-то «критическим».


Иногда, во время проведения «теста эквилизации» — «выравнивания заряда по банкам», бортовой компьютер «сажает» заряд батареи приблизительно до 20% и потом заряжает её до 90-95%.


Так вот, когда хозяин автомобиля начинает «ездить без бензина», то какое-то время автомобиль еще будет передвигаться. Но батарея не вечная. И наступает момент, когда уровень заряда в ней опускается ниже 20%. В батареи происходит необратимая химическая реакция, которая в итоге приводит к выходу банки из «нормального» состояния. Если одна из банок выходит за пределы «нормы», она начинает перегружаться и «закипать» что приводит к тому, что показано на фото:



«Банки» разрывает» и HV battery выходит из строя.


А стоимость батареи – высокая.


«Не оставлять автомобиль надолго на стоянке»


Есть такое понятие, как «саморазряд». HV battery автомобиля Prius имеет саморазряд приблизительно 10% в месяц.


А теперь представьте, что Вы оставили свой автомобиль на полгода.


Оставили, думая, что за шесть месяцев батарея разрядится «всего» на 60%, и в батарее останется еще 40%.


Мысль неправильная. И почему:


— как уже говорилось выше, HV battery никогда не заряжается на 100%.


«Теоретическо — практический» уровень заряда в батарее составляет около 60%.


Дальше можете посчитать самостоятельно.


И вспомнить, что когда уровень заряда опускается ниже 20% (приблизительно), то в «банках» батареи начинают происходить необратимые химические процессы, приводящие к разрушению «банок».


«Не ремонтировать автомобиль самостоятельно»


Многие владельцы автомобилей Prius, особенно, если имеют знания в «механике», компьютерной технике, радиоделе, — они полагают, что «дешевле отремонтировать самостоятельно». Типа: «Это просто, сделаю сам, а если будет сложнее – поеду в мастерскую».


Врать не буду, иногда Это получается, иногда – нет.


В большинстве случаев «нет».


«Неквалифицированное вторжение» как в «механику», так и в «электронику» может привести к очень дорогостоящему ремонту.


По разным причинам владельцы автомобилей Prius пытаются заряжать HV battery самостоятельно.


Можеть быть, у кого-то получается это сделать самостоятельно.


Но по опыту мастерской В. Когута – «не рекомендуется».


И почему: нужны высокоточные устройства для заряда HV battery, потому что при неграмотном «заряде» возможен «перезаряд» батареи и выход ее из строя.


И эти «высокоточные» устройства для контроля заряда должны для исключения перезаряда Ni-MH аккумуляторных батарей применять такие методы (и\или):


— метод прекращения заряда по абсолютной температуре


— метод прекращения заряда по скорости изменения температуры


— метод прекращения заряда по отрицательной дельте


— метод прекращения заряда по максимальному времени заряда


— метод прекращения заряда по максимальному давлению


— метод прекращения заряда по максимальному напряжению


Ну, а кроме «высокоточных» устройств, нужно иметь достаточный Опыт проведения таких мероприятий.


Информация предоставлена Московской Мастерской по Диагностике и ремонту гибридной техники

HYBRIDS.ru

Когут Владимир Владимирович
Ник «Мираж»
г. Москва
8-903-629-62-11

В работе над статьей принимал участие
Гордеев Сергей Николаевич
Свердловская обл., Белоярский р-н, с. Кочневское ул. Садовая 33
тел.: 8 902 444 23 35
Ник «FERMER»

Как перезагрузить форму окна, не закрывая ее с помощью VB.NET?

спросил

Изменено
11 месяцев назад

Просмотрено
116 тысяч раз

Не могли бы вы рассказать мне, как я могу перезагрузить форму Windows, не закрывая ее, используя VB. NET?

  • вб.нет

Я знаю, что поздно, но полезно

 Me.Controls.Clear() 'удаляет все элементы управления в форме
InitializeComponent() 'снова загрузить все элементы управления
Form1_Load(e, e) 'Загрузить все в форму, снова загрузить событие
 

1

Поместите весь свой код инициализации в метод, а не в конструктор или событие Form.Load, и просто вызовите этот метод. Сюда также может входить сгенерированный дизайнером метод InitializeComponent(), который устанавливает все элементы управления в форме. Однако вы должны удалить все элементы управления в форме в качестве первого действия в этом методе.

Вы не можете этого сделать.

Почему вы хотите перезагрузить форму? Вы хотите очистить все элементы управления вводом или что-то в этом роде? Самым простым решением может быть просто сделать очистку вручную.

В качестве альтернативы вы можете поместить все свои элементы управления в контейнер пользовательского элемента управления. Затем просто создайте экземпляр этого пользовательского элемента управления в своей форме. Если вы хотите перезагрузить содержимое формы, вам просто нужно удалить и повторно создать пользовательский элемент управления.

 Приложение.Перезапустить()
 

Закрывает приложение и немедленно открывает новый экземпляр.

3

попробуйте использовать Me.Refresh() у меня сработало

2

 Me.Controls.Clear() 'удаляет все элементы управления в форме
InitializeComponent() 'снова загрузить все элементы управления
main_Load(е, е)
MsgBox("Спасибо за отправку отчета", vbInformation, "")
Обновить()
 

0

Я знаю. Я опаздываю на вечеринку. Но, может быть, это работает для тех, кто в этом нуждается.

Если вы показываете форму из другой формы с помощью .ShowDialog , код после этого вызова будет выполняться, когда форма, которая была показана, закрыта. Пример:

 Private Sub button1_Click(sender As Object, e As EventArgs) Обрабатывает button1.Click
    Тусклая форма2 Как новая форма2
    form2.ShowDialog
    ОбновитьЭтуФорму()
Конец сабвуфера
 

Тогда не нужно обновлять форму с другой формы (Form2).

Выполните следующую строку:
Form_Load(sender, e)

1

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя адрес электронной почты и пароль

Опубликовать как гость

Электронная почта

Требуется, но никогда не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Нажимая «Опубликовать свой ответ», вы соглашаетесь с нашими условиями обслуживания и подтверждаете, что прочитали и поняли нашу политику конфиденциальности и кодекс поведения.

Как «обновить» базу данных MS Access в форме входа vb.net?

Соединения используют неуправляемые ресурсы, которые они освобождают в методе Dispose . Вы должны удалить соединений. Using...End Using Блоки справятся с этим за нас. Объявляйте соединения в методе, где они используются, а не на уровне Class . Объявите строку подключения на уровне класса, чтобы ее можно было использовать в любом методе класса.

Не включайте в свой вопрос пустые Sub s. Таймер и метка даты не имеют к вопросу никакого отношения. Не включайте эти методы.

Включите таймер во время разработки. Бессмысленно создавать локальную переменную для нового соединения в Form.Load , а затем позволять ей выйти из области видимости до того, как она когда-либо будет использована. Помните, соединения должны быть утилизированы.

В методе btnShowPassword (что странно, почему?) вы можете переключать Boolean свойств в одной строке.

В Button1. Нажмите , используйте Или еще для короткого замыкания Если . Он прекратит вычисление выражений, как только найдет True .

Теперь к коду базы данных. Вам никогда не потребуется проверять ConnectionState , потому что он будет объявлен в методе в блоке Using . И соединение, и команда включены в блок Using , потому что команды тоже нужно удалять. Не открывайте соединение до тех пор, пока не появится .Выполнить...

Я рад видеть использование Параметры . Я использовал фактическое имя параметра в CommandText . Знак вопроса работает нормально, но проще связать параметры с ParametersCollection , когда вы можете видеть имена. Access обращает внимание только на положение, но облегчает чтение.

CInt , специфичный для vb, был оптимизирован в .net.

Первый блок кода должен выглядеть так.

 Private ConStr As String = My.Settings.Business_ProfileConnectionString '"Ваша строка подключения"
Private Sub btnShowPassword(sender As Object, e As EventArgs) обрабатывает PictureBox3.Click
    txtBPPassword.UseSystemPasswordChar = не txtBPPassword.UseSystemPasswordChar
Конец сабвуфера
Private Sub Button1_Click (отправитель как объект, e как EventArgs) обрабатывает Button1.Click
    Если txtBPID.Text = "" OrElse txtBPPassword.Text = "" Тогда
        MsgBox("Введите учетные данные", MsgBoxStyle.Exclamation, "Ошибка!")
    Еще
        Dim count как целое число
        Использование соединения как нового OleDbConnection(ConStr),
                cmd As New OleDbCommand («выберите количество (*) из [Сведения о компании], где адрес электронной почты = @ 1 и пароль = @ 2», подключение)
            cmd.Parameters.AddWithValue("@1", OleDbType.VarChar).Value = txtBPID. Text
            cmd.Parameters.AddWithValue("@2", OleDbType.VarChar).Value = txtBPPassword.Text
            соединение.Открыть()
            количество = CInt(cmd.ExecuteScalar())
        Завершить использование
        Если количество = 0 Тогда
            MsgBox("Вход выполнен успешно!", MsgBoxStyle.Information)
            frmWelcomeNew.Show()
            Меня.Скрыть()
        Еще
            MsgBox("Учетная запись не найдена. Проверьте свои учетные данные!", MsgBoxStyle.Critical, "Ошибка!")
        Конец, если
    Конец, если
Конец сабвуфера
 

Во второй форме я разделяю код методом btnNext.Click .
Телефонный номер редко может иметь тире или, возможно, добавочный номер. но я оставил его в покое. Я только что избавился от IsNumeric , оставшихся от vb6.

Я удивлен, что вы не используете настройки, которые вы использовали в первой форме. Это может быть вашей проблемой.

Вам не нужно преобразовывать свойство Text в String . Это уже String .

 Private ConStr As String = My.Settings.Business_ProfileConnectionString '"Ваша строка подключения"
Private Sub btnUpload_Click(sender As Object, e As EventArgs) обрабатывает btnUpload.Click
    Dim opf As New OpenFileDialog
    opf.Filter = "Выбрать изображение(*.jpg;*.png)|* .jpg;*.png"
    Если opf.ShowDialog = DialogResult.OK Тогда
        pcbBusinessPhoto.Image = Image.FromFile(opf.FileName)
    Конец, если
Конец сабвуфера
Private Sub btnNext_BizRegisPG1_Click (отправитель как объект, e как EventArgs) обрабатывает btnNext_BizRegisPG1.Click
    Если Не ValidateInput() Тогда
        Выйти из подпрограммы
    Конец, если
    Пытаться
        ВставитьДанные()
    Поймать экс как исключение
        MessageBox.Show(ex.Message)
        Возвращаться
    Завершить попытку
    MsgBox("Запись сохранена")
    Наглядная форма()
    frmRegistration2.Show()
    Меня.Скрыть()
Конец сабвуфера
Частная функция ValidateInput() как логическое значение
    If txtSQAnswer. Text = "" OrElse cboSQ.Text = "" OrElse txtSSM.Text = "" OrElse txtBizAddress.Text = "" OrElse txtBizEmail.Text = "" OrElse txtBizName.Text = "" OrElse txtBizPhoneNo.Text = "" OrElse txtBizPhoneNo.Text = "" OrElse txtPassword.Text = "" OrElse txtPasswordReenter.Text = "" OrElse cboBizType.Text = "" Тогда
        MsgBox("Пожалуйста, заполните текстовые поля!", MsgBoxStyle.Critical, "Ошибка!")
        Вернуть ложь
    Конец, если
    Если txtPasswordReenter.Text <> txtPassword.Text Тогда
        MsgBox("Ваш повторно введенный пароль не тот!", MsgBoxStyle.Critical, "Ошибка!")
        Вернуть ложь
    Конец, если
    Тусклый телефон до тех пор
    Если Не Длинный.TryParse(txtBizPhoneNo.Text, Телефон) Тогда
        MsgBox("Введите числовое значение только в номер телефона компании", MsgBoxStyle.Critical, "Ошибка!")
        Вернуть ложь
    Конец, если
    Если Ничего(pcbBusinessPhoto.image) Тогда
        MsgBox("Пожалуйста, загрузите фото компании", MsgBoxStyle.Critical, "Ошибка!")
        Вернуть ложь
    Конец, если
    Вернуть истину
Конечная функция
Частный Sub InsertData ()
    Использование myconnection как нового OleDbConnection(ConStr),
            cmd As New OleDbCommand("вставить в [Сведения о компании] значения (@SSM,@BizName,@Address,@Email,@HP,@BizType,@Password,@BusinessPhoto,@OHFrom,@OHTo,@SQ1,SQ1Answer)" , моя связь)
        cmd. Parameters.Add("@SSM", OleDbType.VarChar).Value = txtSSM.Text.ToUpper
        cmd.Parameters.Add("@BizName", OleDbType.VarChar).Value = txtBizName.Text
        cmd.Parameters.Add("@Address", OleDbType.VarChar).Value = txtBizAddress.Text
        cmd.Parameters.Add("@Email", OleDbType.VarChar).Value = txtBizEmail.Text
        cmd.Parameters.Add("@HP", OleDbType.VarChar).Value = txtBizPhoneNo.Text
        cmd.Parameters.Add("@BizType", OleDbType.VarChar).Value = cboBizType.Text
        cmd.Parameters.Add("@Password", OleDbType.VarChar).Value = txtPassword.Text
        cmd.Parameters.Add("@BusinessPhoto", OleDbType.LongVarBinary).Value = pcbBusinessPhoto.Image))
        cmd.Parameters.Add("@OHFrom", OleDbType.VarChar).Value = cboOHFrom.Text
        cmd.Parameters.Add("@OHTo", OleDbType.VarChar).Value = cboOHTo.Text)
        cmd.Parameters.Add("@SQ1", OleDbType.VarChar).Value = cboSQ.Text
        cmd.Parameters.Add("@DQ1Answer", OleDbType.VarChar).Value = txtSQAnswer.Text
        мое соединение. Открыть()
        cmd.ExecuteNonQuery()
    Завершить использование
Конец сабвуфера
Частная подпрограмма ClearForm()
    txtSSM.Очистить()
    txtBizAddress.Clear()
    txtBizEmail.Clear()
    txtBizName.Clear()
    txtBizPhoneNo.Clear()
    txtPassword.Очистить()
    txtPasswordReenter.Clear()
    cboBizType.Text = ""
    cboOHFrom.Text = ""
    cboOHTo.Text = ""
    pcbBusinessPhoto.Image = Ничего
Конец сабвуфера
 

И для третьей формы

 Private ConStr As String = My.Settings.Business_ProfileConnectionString '"Ваша строка подключения"
Private Sub btnSubmit_BizRegisPG2_Click (отправитель как объект, e как EventArgs) обрабатывает btnSubmit_BizRegisPG2.Click
Если Не ValidateInput() Тогда
Возвращаться
Конец, если
Пытаться
Вставить владельца ()
Поймать экс как исключение
MessageBox.Show(ex.Message)
Возвращаться
Завершить попытку
Наглядная форма()
MsgBox("Запись сохранена")
Меня.Скрыть()
frmLoginBP.Show()
Конец сабвуфера
Частная функция ValidateInput() как логическое значение
Если txtIC. Text = "" OrElse txtFirstName.Text = "" OrElse txtLastName.Text = "" OrElse txtEmail.Text = "" OrElse txtHP.Text = "" OrElse dtpDOB.Text = "" Тогда
MsgBox("Пожалуйста, заполните текстовые поля!", MsgBoxStyle.Critical, "Ошибка!")
Вернуть ложь
Конец, если
Dim IC как целое число
Если Не Integer.Parse(txtIC.Text, IC), то
MsgBox("Пожалуйста, введите числовое значение в номер удостоверения личности!", MsgBoxStyle.Critical, "Ошибка!")
Вернуть ложь
Конец, если
Если pcbIC.image ничего, то
MsgBox("Пожалуйста, вставьте фото владельца!", MsgBoxStyle.Critical, "Ошибка!")
Вернуть ложь
Конец, если
Если rbtFemale.Checked = False И rbtMale.Checked = False Тогда
MsgBox("Пожалуйста, выберите свой пол!", MsgBoxStyle.Critical, "Ошибка!")
Вернуть ложь
Конец, если
Если rbtAgree.Checked = False Тогда
MsgBox("Пожалуйста, СОГЛАСИТЕСЬ с условиями Goodstopia!", MsgBoxStyle.Critical, "Ошибка!")
Вернуть ложь
Конец, если
Вернуть истину
Конечная функция
Частный Sub InsertOwner ()
Dim finalGender As String
Если rbtMale. Checked = True Тогда
finalGender = "Мужской"
Еще
finalGender = "Женщина"
Конец, если
Dim Command = "вставить в значения [Сведения о владельце] (@IC,@FirstName,@LastName,@Email,@HP,@DOB,@Gender,@ICPhoto)"
Использование myconnection как нового OleDbConnection(ConStr),
cmd As New OleDbCommand (команда, myconnection)
cmd.Parameters.Add("@IC", OleDbType.VarChar).Value = UCase(txtIC.Text)
cmd.Parameters.Add("@FirstName", OleDbType.VarChar).Value = txtFirstName.Text
cmd.Parameters.Add("@LastName", OleDbType.VarChar).Value = txtLastName.Text
cmd.Parameters.Add("@Email", OleDbType.VarChar).Value = txtEmail.Text
cmd.Parameters.Add("@HP", OleDbType.VarChar).Value = txtHP.Text
cmd.Parameters.Add("@DOB", OleDbType.VarChar).Value = dtpDOB.Text
cmd.Parameters.Add("@Gender", OleDbType.VarChar).Value = finalGender
cmd.Parameters.Add("@ICPhoto", OleDbType.LongVarBinary).Value = pcbIC.Image
мое соединение.