![]() |
Campo inhabilitado en grabacion
Buen día saperos, bueno voy con mi duda.
En una grabación a la transacción FB60 hay una parte donde tengo que calcular el iva, para eso lo hago presionando un botón especificamente para eso y me abre un pop up, seguido de eso presiono otro botón y listo me calcula el iva dependiendo de la cantidad que ya halla puesto yo para determinada posición, pero en ese pop up hay dos campos los cuales van a contener la misma cantidad, solo que uno es editable y el otro no.. Al editable pues obviamente puedo mandarle ya mi cantidad del IVA sin yo tener que calcularlo, solo que pues nadamás me va a aceptar el valor que yo le mande al campo que es editable, pero para el otro como le puedo hacer? agradezco su ayuda... |
sin grabacion
Porque no intentas hacerlo por BAPI (BAPI_ACC_DOCUMENT_POST). fijate por ahi te sirve.
saludos.:D |
Ey gracias por contestar, pues bueno ya quité eso que intentaba hacer ya que el problema no hiba por allí.. es por otra cosa, cuando le paso los impuestos al campo correspondiente me dice este error: campo ACGL_ITEM-FWBAS. (longitud de valor entrada mayor que el campo dynpro) y se detiene la grabación así que tengo que hacerla en modo visible para dar un enter y continue el flujo, es lo que se me hace raro ya que en invisible aunque ponga el comando de enter no lo hace y no me crea el docto. Esa bapi la utilizé ya y funciona bien pero cuando no tengo que calcular los impuestos, cuando es así como lo hago para poder utilizar esa bapi?? gracias nuevamente por la atención
|
La variable que estas usando para asignar el valor a ese campo tiene una longitud mayor a la que acepta el campo.. por lo general me pasa con variables múmericas, yo lo que hago en ese tipo de casos es declararme una variable tipo char18 PorEj. y asigno esa variable al campo y no la variable númerica. Tamb. si no te toma el enter que tu le estas poniendo seguramente es porque el tipo de mensaje es de warning (barra de estado color amarillo), los warning en call transaction en modo N no requieren que le mandes el comando. Ahora en cuanto a los campos no editables, no le podras meter el contenido puesto que no es editable, lo que tendrias que ver es si en el flujo normal de la FB60 te lo muestra editable, de ser así lo mas seguro es que ese campo cuando la transaccion es llamada con un call transaction se debe de alimentar en otro lugar (otra Dynpro), tal como pasa cuando contabilizas en la FB01 en los Dynpro que pide CeBe o CeCo al ser llamados desde un call transaction aparece un PopUp para poder colocar dichos valores. Saludos, |
DCErick: Muchas gracias por contestar, no ya vi que no necesito meter un dato a ese campo que no es editable pq precisamente no lo va a tomar, pero ya sé como calcular los impuestos entonces ya tengo el valor para meterlo en mi campo, ya intenté eso que me mencionas de declararlo de tipo char y no pude tampoco, me sigue tirando el mismo error... Sobre de que no tome mi enter no tengo idea pero cuando lo corro en modo E hace todo y se detiene en esa parte pero el tipo del mensaje no es Warning con la barra amarilla me brinca de tipo Succesfull con ese mensaje y es cuando tengo que dar el enter para que finalize mi grabación... Sigo sin poder resolverlo lo dejé así temporalmente en modo E para que den enter pero obviamente no lo dejaré así, si pueden aportar algo más estaría agradecido.
Gracias otra vez por la atención :) |
El campo ACGL_ITEM-FWBAS es el mismo campo que dices que no es editable? Quita la asignacion de valor al campo ACGL_ITEM-FWBAS y veamos que pasa y si es posible sube una imagen de la dynpro justo cuando te salta el mensaje y el usuario es obligado a dar enter.
Saludos, |
|
mmmm tomando en cuenta esa cantidad declarate un char9 y checa si te marca el mismo mensaje... Porque si está raro que no te deje alimentar el dato.
|
ahhhh que raro!!! pfff declarandolo así de char de 9 si lo tomó, pero mira ya lo había intentado con un char de 16 y me tiraba el mismo error, a que se puede deber? Y al ser así me daba muchos decimales pq no redondeaba, y algo más, en este caso fué un char de 9, pero si la cifra es más grande? como ya te mencioné es por eso que la declaré de un tamaño largo...
|
Si es algo raro e incomodo, pues yo para la F-28 campo BSEG-WRBTR estoy utilizando un l_importe TYPE char15, hago todos los calculos sobre una variable declarada del tipo que debe de ser en tu caso FWBAS y luego la paso a la variable char
En tu caso el tipo de dato es de FWBAS declarate un char13 y deberia ser suficiente. Si te vas a la SE11 y pones el elemento de datos te dice que la longitud del campo es de 13 si te pones sobre el 13 y le das F1 te sale lo siguiente: |
Husos Horarios son GMT. La hora en este momento es 19:23:11. |
www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web