[[Category:MACRO]]
== Descripción ==
Sugiere un código de Contacto de acuerdo al tipo de contacto referido (al momento: Cliente, Proveedor, Agente Comercial, Otros)
== Biblioteca ==
*[[SpanexB]]
== Composición ==
== Código ==
<small><pre>
Sub SugerenciaContactoID

Dim oForm		As Object
Dim oContactoID	As String
Dim vContactoID	As Double
Dim oRelleno	As String
Dim oPrefijo	As String

	oForm		= ThisComponent.Drawpage.Forms.getByName("MainForm")
	oFormName	= InStr(ThisComponent.Title,"Aux:000002")
	if oForm.IsNew OR oFormName>0 Then
		oSugiere	= False
		if oFormName>0 Then
			oSugiere = True
		else
			oMensaje	= ""
			oMensaje	= oMensaje & "El código sugerido estará asociado al Tipo de Contacto indicado. Corroboró ya el tipo de contacto?"
			if MsgBox(SplitMsg(oMensaje,40),MB_YESNO+MB_ICONEXCLAMATION,"Atención") = IDYES Then
				oSugiere	= True
			endif
		endif
		if oSugiere Then
			oCondicion	= ""
			select case True
				case oForm.getByName("txtClienteTag").CurrentValue=1
					oCondicion	= oCondicion & "ClienteTag=1"
					oPrefijo	= "0"
				case oForm.getByName("txtProveedorTag").CurrentValue=1
					oCondicion	= oCondicion & "ProveedorTag=1"
					oPrefijo	= "3"					
				case oForm.getByName("txtAComercialTag").CurrentValue=1
					oCondicion	= oCondicion & "AComercialTag=1"
					oPrefijo	= "8"					
				case oForm.getByName("txtOtrosTag").CurrentValue=1
					oCondicion	= oCondicion & "OtrosTag=1"
					oPrefijo	= "5"			
			end select
			oRelleno	= "00000000"
			oContacto	= QuerySimple("Max(ContactoID)","UltimoContacto","contactos",oCondicion,"String")	
			vContactoID	= Val(oContacto)
			vContactoID	= vContactoID + 1
			if oContacto = "" Then
				oContactoID = oPrefijo & Right(oRelleno & RTrim(LTrim(str(vContactoID))),7)
			else
				oContactoID = Right(oRelleno & RTrim(LTrim(str(vContactoID))),8)
			end if
			oForm.getByName("txtContactoID").setString(oContactoID)
		end if
	end if
end Sub
</pre></small>
== Bitácora ==
*20121017
**Ultima Modificación
== Uso ==
*[[FORM:Presupuesto]]
**[[FORM:Aux:000002]]
*[[FORM:Contactos]]