바코드 프로그램을 만들고 있는데
MOD43 방식을 적용한 checkdigit 를 생성하려 합니다.
/// 비베 소스 ///
Const charSet As String = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%"
Function Mod43(C39 As String) As String
For i = 1 To Len(C39)
total = InStr(charSet, Mid(C39, i, 1)) - 1 + total
Next i
Mod43 = C39 & Mid$(charSet, (total Mod 43 + 1), 1)
End Function
////////////////////////////////////////////////////////////////////////////////////////////////////////////
비주얼베이직은 배운적이 없어서 이래저래 수정 해봤는데
자꾸 에러가 나네요..
델파이로 바꾸는 tip 좀 알려주시면 감사하겠습니다.
Const charSet As String = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%"
Function Mod43(C39 As String) As String
For i = 1 To Len(C39)
total = InStr(charSet, Mid(C39, i, 1)) - 1 + total
Next i
Mod43 = C39 & Mid$(charSet, (total Mod 43 + 1), 1)
End Function
Const charSet = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%';
Function Mod43(C39 : String): String;
var i, total : integer;
begin
total := 0;
For i := 1 To Length(C39) do
total := pos(c39[i], charSet) - 1 + total;
Mod43 := C39 + charSet[total Mod 43 + 1];
End;
<!--CodeE-->
의도하신바가 맞는지. 비베를 놓은지 오래고 콤에 설치되있지 않아서 테스트해보지 못하고 올리니 참고만 해주세요.