Esperamos sea de utilidad
- /**
- *
- * @param txtCuit CUIT del EMISOR del comprobante sin guiones
- * @param txtCodComp codigo de comprobantes dos digitos
- * @param txtPtoVta punto de venta del comprobante 4 digitos
- * @param txtCae cae
- * @param txtVtoCae vencimiento del cae en formato yyyyMMdd
- * @return devuelve el string completo para utilizar en el codigo de barras
- */
- public String calculoDigitoVerificador(String txtCuit, String txtCodComp,
- String txtPtoVta, String txtCae, String txtVtoCae) {
- int i;
- String cod;
- String txtDigito;
- int impares;
- int pares;
- int total;
- int digito;
- String txtCodBarra;
- cod = txtCuit + txtCodComp + txtPtoVta + txtCae + txtVtoCae;
- txtCodBarra = cod;
- //
- // Ahora analizo la cadena de caracteres:
- // Tengo que sumar todos los caracteres impares y los pares
- pares = 0;
- impares = 0;
- for (i = 1; i < 40; i++) {
- //
- // If I Mod 2 = 0 Then
- if (i % 2 == 0) {
- // es par
- // Pares = Pares + CLng(Mid(Cod, I, 1))
- pares += Integer.valueOf(StringUtils.mid(cod, i - 1, 1));
- } else {
- // es impar
- // Impares = Impares + CLng(Mid(Cod, I, 1))
- impares += Integer.valueOf(StringUtils.mid(cod, i - 1, 1));
- }
- }
- //
- impares = 3 * impares;
- total = pares + impares;
- digito = 10 - (total % 10);
- //
- if (digito == 10) {
- digito = 0;
- }
- return cod + digito;
- }
2 comments:
Para que el txtCodBarra?
exactamente!
Post a Comment