Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
171 / 106 / 51
Регистрация: 27.11.2015
Сообщений: 1,268
1

Изменить возвращаемое значение в поле, чтобы считал процент при двух значений цен

24.08.2018, 12:54. Показов 687. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Функция считает процент от изменения 2 цен и возвращает н/д в поле если 2 записи, если 3 и больше , то всё норм считает.
Как исправить чтобы считала при 2ух записях ?

VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Function CalculateHistoricalIncrease( _
                ByVal vdblOldAmount, ByVal vintOldCurrID, ByVal vdtmOldStartDate, ByVal vdtmOldEndDate, _
                ByVal vdblNewAmount, ByVal vintNewCurrID, ByVal vdtmNewStartDate, ByVal vdtmNewEndDate, _
                ByVal vintConvertToCurrID, ByRef robjCurrConv)
 
 
 
    Dim dblConvOldAmount      '::: Converted old amount
    Dim dblConvNewAmount      '::: Converted new amount
    Dim dblIncrease           '::: Increase in %
 
    '::: If a currency to convert to is specified, use it; otherwise use the currency of
    '::: the newer record.
    If IsNull(vintConvertToCurrID) Then
      robjCurrConv.CurrIDOut = vintNewCurrID
    Else
      robjCurrConv.CurrIDOut = vintConvertToCurrID
    End If
 
    '::: Calculate converted old amount. Use end date of old record. If the end
    '::: date of the old record is NULL, use current date.
    If IsNull(vdtmOldEndDate) Then
      vdtmOldEndDate = Date
    End If
    robjCurrConv.CurrIdIn = vintOldCurrID
    dblConvOldAmount = robjCurrConv.Convert(vdblOldAmount, vdtmOldEndDate)
 
    '::: Calculate converted new amount. Use start date of new record.
    robjCurrConv.CurrIdIn = vintNewCurrID
    dblConvNewAmount = robjCurrConv.Convert(vdblNewAmount, vdtmNewStartDate)
 
    '::: If either the old or new salary is NULL (that is: not defined or
    '::: cannot be converted) then the result of this function is NULL.
    dblIncrease = Null
    If ((Not IsNull(dblConvOldAmount)) And (Not IsNull(dblConvNewAmount))) Then
 
      '::: Double-check type
      dblConvNewAmount = CDbl(dblConvNewAmount)
      dblConvOldAmount = CDbl(dblConvOldAmount)
 
      '::: Prevent division by zero
      If dblConvOldAmount = 0 Then
        dblIncrease = Null
      Else
        dblIncrease = ((dblConvNewAmount / dblConvOldAmount) -1) * 100
      End If
 
    End If
 
    '::: Set return value
    CalculateHistoricalIncrease = dblIncrease
 
  End Function
Добавлено через 2 минуты
Заметил что функция работает нормально, но отображается у админа, а у пользователя нет(
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.08.2018, 12:54
Ответы с готовыми решениями:

Поле со списком, чтобы можно была изменить значение
zdrastvuite ia srazu skaju shto ia balshoi nub vetom dele.... =))) esli mojna skajite...

Изменить значение, возвращаемое ZoneId.systemDefault()
в тестах ZoneId.systemDefault() возвращает GMT, несмотря на то, что в @BeforeMethod стоит ...

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

Не удалось изменить возвращаемое значение для List<T>.this[int]
listStructSelected.byteStatus = getStatus(); Ошибка: Ошибка 25 Не удалось изменить возвращаемое...

4
Модератор
Эксперт .NET
15464 / 10710 / 2786
Регистрация: 21.04.2018
Сообщений: 31,529
Записей в блоге: 2
24.08.2018, 13:29 2
В описание у Вас требуется очень простое действие. В приведённом же коде, наличествует масса проверок и конвертаций. Разбираться с которыми надо в отладчике при вызове со всеми необходимыми параметрами.... Долго и нудно.
Вам всё это необходимо, или взяли какой-то пример и пытаетесь приспособить под себя?
0
171 / 106 / 51
Регистрация: 27.11.2015
Сообщений: 1,268
24.08.2018, 14:55  [ТС] 3
Элд Хасп,
Цитата Сообщение от Элд Хасп Посмотреть сообщение
Вам всё это необходимо
Да.
Проверки просты, на нал и деления на 0
0
Модератор
Эксперт .NET
15464 / 10710 / 2786
Регистрация: 21.04.2018
Сообщений: 31,529
Записей в блоге: 2
24.08.2018, 15:15 4
Цитата Сообщение от ShmelVG Посмотреть сообщение
Проверки просты, на нал и деления на 0
Я не говорю, что они сложные, но их много. И мне, допустим, не понятно какой параметр за что отвечает, процент от чего надо считать, где эти две или три записи и т.д. Так же, скорее всего, и остальным будет неохота со всем этим разбираться.
Вы или сократите этот кусок кода, собственно до той части, что не работает. Или дайте подробное объяснение, чтобы не сидеть и не догадываться об этом.
0
171 / 106 / 51
Регистрация: 27.11.2015
Сообщений: 1,268
24.08.2018, 15:24  [ТС] 5
Элд Хасп,
VB.NET
1
2
3
4
5
6
7
8
9
10
11
 Parameters:
   - vdblOldAmount           Money amount of old salary amount
   - vdblOldCurrID           Currency of old salary amount
   - vdblOldStartDate        Start date of old salary amount
   - vdblOldEndDate          End date of old salary amount
   - vdblNewAmount           Money amount of old salary amount
   - vdblNewCurrID           Currency of old salary amount
   - vdblNewStartDate        Start date of old salary amount
   - vdblNewEndDate          End date of old salary amount
   - vintConvertToCurrID     Curreny to convert amounts to
   - robjCurrConv            Reference to a ready-to-use CurrencyConverter object
Добавлено через 26 секунд
Элд Хасп, над любой задачей надо думать
0
24.08.2018, 15:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.08.2018, 15:24
Помогаю со студенческими работами здесь

А как изменить программу так , чтобы вычислялось наименьшее значение из двух вещественных чисел
Ребят, помогите, только начал изучать C# Столкнулся с задачей, весь день убил ни гугл ни яндекс не...

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

При нажатии на поле DbGrid изменить значение True на False и наоборот
помогите пожалуйста! необходимо чтоб при нажатии на поле дб грид информация true изменилась на...

Обмен валюты сделать в Access курс валюты не имеет значение главное чтобы считал
Помогите, в долгу не останусь!! Суть в том: Обмен валюты сделать в Access курс валюты не имеет...

Нужно чтобы при выборе radio сразу изменялось значение в поле input
Нужно чтобы при выборе radio сразу изменялось значение в поле input В данный момент есть radio ...

Создайте кнопку для нахождения значений функции Z=X! При этом в поле Y копируйте значение X
Создайте кнопку для нахождения значений функции Z=X! При этом в поле Y копируйте значение X. Не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru