Как сравнить два идентификатора GUID в SSIS с условным разделением?

Я видел этот вопрос и попробовал то, что он предложил, но безуспешно (см. Попытку 1 ниже).

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

Я перепробовал много способов добиться этого без успеха:

Попытка 1:

CompanyGUIDString = (DT_WSTR,50)CompanyID  // In Derived Column

// Conditional Split Condition
ISNULL(AssociationID) ==  FALSE  && ccseq_associationtype == 2 && CompanyGUIDString == "7C46BB0B-AEF3-E611-80E0-005056B33317" 

Попытка 2:

ISNULL(AssociationID) ==  FALSE  && ccseq_associationtype == 2 && CompanyID == "7C46BB0B-AEF3-E611-80E0-005056B33317" 

Попытка 3:

ISNULL(AssociationID) ==  FALSE  && ccseq_associationtype == 2 && (DT_WSTR, 50) CompanyID == (DT_WSTR,50) "7C46BB0B-AEF3-E611-80E0-005056B33317" 

Попытка 4:

ISNULL(AssociationID) ==  FALSE  && ccseq_associationtype == 2 && (DT_STR, 50, 1252) CompanyID == (DT_STR, 50, 1252) "7C46BB0B-AEF3-E611-80E0-005056B33317"

Попытка 5:

ISNULL(AssociationID) ==  FALSE  && ccseq_associationtype == 2 && (DT_GUID) CompanyID == (DT_GUID) "7C46BB0B-AEF3-E611-80E0-005056B33317"  

2 ответа

Решение

Я обнаружил ответ. Когда вы конвертируете GUID в строку, приведение добавляет "{}" к GUID. Код ниже будет работать правильно.

(ISNULL(AssociationID) ==  FALSE ) && (ccseq_associationtype == 2) && (UPPER((DT_WSTR,50)CompanyID) == UPPER((DT_WSTR,50)"{7C46BB0B-AEF3-E611-80E0-005056B33317}"))

Ваше выражение выглядит хорошо, но обратите внимание, что выражения SSIS чувствительны к регистру, просто добавьте скобки и используйте UPPER() функция

(ISNULL(AssociationID) ==  FALSE)  &&
([ccseq_associationtype] == 2) && 
(UPPER((DT_WSTR, 50)[CompanyGUIDString]) == UPPER("7C46BB0B-AEF3-E611-80E0-005056B33317"))
Другие вопросы по тегам