В представлении SQL у меня есть 5 булевых переменных и одна переменная типа int.
из 5 логических переменных только одна переменная будет истинной для одной строки данных,
Тип задачи boolVerySmall Datestart TagName
Настройка архитектуры - Код документа True 1900-01-01 00: 00: 00.000 Design_09
idProject boolsmall boolСредний boolБольшой boolVeryLarge intHours
4 False False False False 0
Приведенные выше данные относятся к одной строке ... в этой строке, когда я загружаю данные из базы данных в таблицу Excel, мне нужно отображать только истинное значение (boolVerySmall, boolsmall, boolMedium, boolLarge, boolVeryLarge, intHours ) должен отображаться в одном столбце,
Я написал Хранимую процедуру для этого. Мне трудно получить конкретную строку, которая имеет TRUE из intHours> 0.
Я добавляю SQL-запрос ниже. Пожалуйста, помогите мне
SELECT dbo.tblResourceTaskList.txtTask, dbo.tblIndividualRelativeData.txtProductType, dbo.tblResourceTaskList.boolVerySmall,
dbo.tblResourceTaskList.dtActualCompletionDate, dbo.tblEffortCodes.txtTagName, dbo.tblResourceTaskList.txtTaskNotes, dbo.tblResourceTaskList.idSubProject, dbo.tblResourceTaskList.idLaunch, dbo.tblResourceTaskList.idResource, dbo.tblResourceTaskList.boolSmall, dbo.tblResourceTaskList.boolMedium, ДБО. tblResourceTaskList.boolLarge, dbo.tblResourceTaskList.boolVeryLarge,
dbo.tblResourceTaskList.intDirectHours
ОТ dbo.tblResourceTaskList ВНУТРЕННЕЕ СОЕДИНЕНИЕ dbo.tblProjectUsers ВКЛ
dbo.tblResourceTaskList.idResource = dbo.tblProjectUsers.idUser INNER JOIN
dbo.tblLaunchInfo ON dbo.tblResourceTaskList.idLaunch = dbo.tblLaunchInfo.idLaunch INNER JOIN dbo.tblIndividualRelativeData ON dbo.tblResourceTaskList.idIndividualRelativeEffort = dbo.tblIndividualRelativeData.idIndividualRelativeEffort LEFT OUTER JOINdbo.tblEffortCodes ON dbo.tblResourceTaskList.idEffortCode = dbo.tblEffortCodes.idEffortCode
Моя хранимая процедура
ВЫБЕРИТЕ txtTask, txtProductType, boolVerySmall , txtTagName, txtTaskNotes,
dtActualCompletionDate
FROM tblResourceTaskList_View
ГДЕ (idSubProject = @idSubProjectIndex)
, поскольку первая строка из db имеет значение TRUE для boolVerySmall, тогда SP должен вернуть это значение и, если оно отличается от этого, он должен дать это значение.
Вместо заполнения True в листе Excel, я должен назначить VS для boolVerySmall, S - Маленький, M - Средний, L - Большой VL - VeryLarge в листе исключений.
Так что, пожалуйста, помогите мне, как работать над этим.
1. Назначение коротких имен (например, VS ... для bool var).
2. Вернуть только одно значение (boolverysmall или ...) и присвоить ему VS и заполнить его в excel.
3. если все логические выражения неверны, то следует использовать intHours ...
Пожалуйста, помогите мне.
Спасибо
Рамм