From aed91ee86c9f1134e1439e11104b2bf598a36734 Mon Sep 17 00:00:00 2001 From: david Date: Tue, 3 Jun 2008 11:27:19 +0000 Subject: [PATCH] =?UTF-8?q?A=C3=B1adido=20uReferenciasUtils.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@414 0c75b7a4-871f-7646-8a2f-f78d34cc349f --- Source/Base/Utiles/uReferenciasUtils.pas | 32 ++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 Source/Base/Utiles/uReferenciasUtils.pas diff --git a/Source/Base/Utiles/uReferenciasUtils.pas b/Source/Base/Utiles/uReferenciasUtils.pas new file mode 100644 index 00000000..5080d529 --- /dev/null +++ b/Source/Base/Utiles/uReferenciasUtils.pas @@ -0,0 +1,32 @@ +unit uReferenciasUtils; + +interface + + +{ Si ARef1 < ARef2 -> Result := -1 + Si ARef1 = ARef2 -> Result := 0 + Si ARef1 > ARef2 -> Result := 1 } + +function CompararReferencias(const ARef1, ARef2 : String) : Integer; + +implementation + +uses + JclStrings, cxVariants; + +function CompararReferencias(const ARef1, ARef2 : String) : Integer; +var + Aux1, Aux2 : String; + Rpl : Char; +begin + Rpl := '0'; + Aux1 := StrReplaceButChars(ARef1, AnsiDecDigits, Rpl); + Aux2 := StrReplaceButChars(ARef2, AnsiDecDigits, Rpl); + + if StrIsDigit(Aux1) and StrIsDigit(Aux2) then + Result := VarCompare(StrToIntSafe(Aux1), StrToIntSafe(Aux2)) + else + VarCompare(Aux1, Aux2) +end; + +end.