Clarion - CREAR UNA CONSULTA DE TC SUNAT PARTIENDO DE VBA A CLARION

 
Vista:
sin imagen de perfil
Val: 28
Ha mantenido su posición en Clarion (en relación al último mes)
Gráfica de Clarion

CREAR UNA CONSULTA DE TC SUNAT PARTIENDO DE VBA A CLARION

Publicado por JUAN (16 intervenciones) el 01/08/2018 05:08:30
Buenas Noches estimados Señores de la Comunidad de la Web del Programador, recién estoy conociendo como programar con Clarion y estoy aun perdido, la idea es la siguiente y quisiese su apoyo en el desarrollo del codigo.

Estoy creando una sentencia que realice el descargo automático del Tipo de Cambio de la pagina de Sunat, La informacion ideal se basa en las columnas, Periodo, mes, fecha, tipo de cambio de compra y tipo de cambio de venta, estoy partiendo de la creacion de la tabla y el form, y tengo poca base en el lenguaje de clarion,

Buseando por alli encontre un código desarrollado en excel y quisiese su apoyo para llevarlo a clarion.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
Rem Attribute VBA_ModuleType=VBAModule
Option VBASupport 1
 
 
Sub O1Ol01OO1O1()
Dim O1Ol11OO1O1 As String
Dim O1OO11OO1O1 As InternetExplorer
Dim O1lO11OO1O1 As HTMLDocument
Dim O1lO11Ol1O1 As IHTMLElementCollection
Dim O1lO01Ol1O1 As HTMLTableCell
Dim O1lO01O11O1 As Long
Dim O1lO01O11O0, OllO01O11O0 As String
Dim OllO01l11O0 As Integer
Dim Olll01l11O0 As Date
Dim Olll01l11OO As Date
Range("b17:d100").ClearContents
O1lO01O11O0 = Format(Hoja1.Range("mes").Value, "00")
OllO01O11O0 = Hoja1.Range("anio").Value
fechadeclara = DateSerial(OllO01O11O0, O1lO01O11O0 + 1, 0)
Olll01l11O0 = DateSerial(Year(Date), Month(Date) + 1, 0)
 
'Debug.Print fechadeclara & " y: " & Olll01l11O0

If fechadeclara > Olll01l11O0 Then
MsgBox "El periodo de consulta supera al periodo actual.", vbCritical, "Error en el Periodo"
Exit Sub
End If
Application.StatusBar = "Obteniendo Tipo de Cambio desde la Web de SUNAT"
Application.EnableEvents = False
Application.ScreenUpdating = False
O1Ol11OO1O1 = "http://www.sunat.gob.pe/cl-at-ittipcam/tcS01Alias?mesElegido=01&anioElegido=2018&mes=" & O1lO01O11O0 & "&anho=" & OllO01O11O0 & "&accion=init&email="

Set O1OO11OO1O1 = New InternetExplorer
With O1OO11OO1O1
.Navigate O1Ol11OO1O1
.Visible = False
While .Busy Or .ReadyState <> READYSTATE_COMPLETE: DoEvents: Wend
Set O1lO11OO1O1 = .Document
End With
Set O1lO11Ol1O1 = O1lO11OO1O1.getElementsByTagName("Td")
For Each O1lO01Ol1O1 In O1lO11Ol1O1
Select Case O1lO01Ol1O1.className
Case "H3"
Range("b65536").End(xlUp).Offset(1, 0).Value = DateSerial(OllO01O11O0, O1lO01O11O0, O1lO01Ol1O1.innerText)
Case "tne10"
If O1lO01Ol1O1.innerText = "" Then O1lO01Ol1O1.innerText = "SIN T.C"
If Range("b65536").End(xlUp).Offset(0, 1).Value = "" Then
Range("c65536").End(xlUp).Offset(1, 0).Value = O1lO01Ol1O1.innerText
Else
Range("c65536").End(xlUp).Offset(0, 1).Value = O1lO01Ol1O1.innerText
End If
End Select
Next
Application.StatusBar = "Listo!!! se obtuvo el tipo de cambio"
O1OO11OO1O1.Quit

Call Olll00l11OO
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Sub Olll00l11OO()
Dim Olll00l1lOO As Date
Dim Olll00l1lO0 As Integer
Dim O1ll00l1lO0 As Integer

z = Range("b65536").End(xlUp).Value


Cells(17, "b").Select
Olll00l1lOO = Cells(17, "b").Value
Olll00l1lO0 = Year(Olll00l1lOO)
O1ll00l1lO0 = Month(Olll00l1lOO)
Do
regresa:
If ActiveCell.Value = "" Or Day(ActiveCell.Value) <> ActiveCell.Row - 16 Then
Range(Cells(ActiveCell.Row, "b"), Cells(ActiveCell.Row, "d")).Insert shift:=xlDown, copyorigin:=xlFormatFromRightOrBelow
ActiveCell.Value = DateSerial(Olll00l1lO0, O1ll00l1lO0, ActiveCell.Row - 16)
ActiveCell.Offset(0, 1).Value = Val(ActiveCell.Offset(-1, 1).Value)
ActiveCell.Offset(0, 2).Value = Val(ActiveCell.Offset(-1, 2).Value)
GoTo regresa
End If

If Range("b" & ActiveCell.Row).Value = z Then Exit Sub

ActiveCell.Offset(1, 0).Select

Loop Until ActiveCell.Row = Day(DateSerial(Olll00l1lO0, O1ll00l1lO0 + 1, 0)) + 17
Range("C17:D48").NumberFormat = "_ * #,##0.000_ ;_ * -#,##0.000_ ;_ * ""-""??_ ;_ @_ "
Range("b5").Select
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 58
Bronce
Ha mantenido su posición en Clarion (en relación al último mes)
Gráfica de Clarion

CREAR UNA CONSULTA DE TC SUNAT PARTIENDO DE VBA A CLARION

Publicado por Victor David (39 intervenciones) el 06/08/2018 19:23:50
creas un ole
1
2
3
4
5
6
7
8
9
10
11
data
WebBrowser                      LONG,AUTO
O1Ol11OO1O1                 string(250)
 
code
O1Ol11OO1O1="http://www.sunat.gob.pe/cl-at-ittipcam/tcS01Alias?mesElegido=01&anioElegido=2018&mes=" & O1lO01O11O0 & "&anho=" & OllO01O11O0 & "&accion=init&email="
WebBrowser              = CREATE(0,CREATE:OLE)
WebBrowser{PROP:Create} = 'InternetExplorer.Application'
WebBrowser{'Navigate(' & O1Ol11OO1O1 & ')'}
O1lO11Ol1O1=WebBrowser{'getElementsByTagName("Td")'}
etc..ect...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 28
Ha mantenido su posición en Clarion (en relación al último mes)
Gráfica de Clarion

CREAR UNA CONSULTA DE TC SUNAT PARTIENDO DE VBA A CLARION

Publicado por JUAN (16 intervenciones) el 11/08/2018 17:38:46
Estimado buen dia, te comento que no se hacer este control, como te indico recien estoy conociendo el programa, podrias ayudarme, te adjunto el archivo app y dct que estoy realizando.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 58
Bronce
Ha mantenido su posición en Clarion (en relación al último mes)
Gráfica de Clarion

CREAR UNA CONSULTA DE TC SUNAT PARTIENDO DE VBA A CLARION

Publicado por Victor David (39 intervenciones) el 13/08/2018 21:23:25
No veo el app ni dct adjuntos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 28
Ha mantenido su posición en Clarion (en relación al último mes)
Gráfica de Clarion

CREAR UNA CONSULTA DE TC SUNAT PARTIENDO DE VBA A CLARION

Publicado por JUAN (16 intervenciones) el 13/08/2018 23:30:58
DISCULPA AL PARECER NO SE ADJUNTO.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 28
Ha mantenido su posición en Clarion (en relación al último mes)
Gráfica de Clarion

CREAR UNA CONSULTA DE TC SUNAT PARTIENDO DE VBA A CLARION

Publicado por JUAN (16 intervenciones) el 14/08/2018 19:51:49
Hola Estimado Victor buenas tardes podria verificar el adjunto, la idea es que la información se descargue en el Browse, posicionándose en el año y mes cuando se ejecuta el boton de buscar, te adjunto el app
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 58
Bronce
Ha mantenido su posición en Clarion (en relación al último mes)
Gráfica de Clarion

CREAR UNA CONSULTA DE TC SUNAT PARTIENDO DE VBA A CLARION

Publicado por Victor David (39 intervenciones) el 15/08/2018 05:00:57
En el adjunto anterior te di el ejemplo de como crear el ole control con el internet explorer y como navegar a la pagina y obtener un tag, pero e trabajo no creo que alguien mas te lo vaya a hacer este es un foro para preguntar no para que te hagan el trabajo, si tienes una duda con gusto te ayudo pero no te puedo hacer el codigo gratis .

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 28
Ha mantenido su posición en Clarion (en relación al último mes)
Gráfica de Clarion

CREAR UNA CONSULTA DE TC SUNAT PARTIENDO DE VBA A CLARION

Publicado por JUAN (16 intervenciones) el 15/08/2018 05:14:57
Muchas Gracias por su respuesta, valoro su esfuerzo, como le indico en un anterior mensaje recien estoy aprendiendo y es de notar los errores que yo tenga, talves en el futuro logre hacer el código y cuando lo tenga lo compartiré gratis, ya que en el foro no existe este ejemplo, bien seria positivo para el foro tenerlo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar