{"id":1671,"date":"2023-12-12T08:00:31","date_gmt":"2023-12-12T07:00:31","guid":{"rendered":"http:\/\/192.168.20.3\/?p=1671"},"modified":"2024-12-09T16:17:50","modified_gmt":"2024-12-09T15:17:50","slug":"nuevas-funcionalidades-del-lenguaje-abap-i","status":"publish","type":"post","link":"https:\/\/orekait.com\/es\/nuevas-funcionalidades-del-lenguaje-abap-i\/","title":{"rendered":"Nuevas funcionalidades del lenguaje I<br> <span class=\"font-300\">ABAP<\/span>"},"content":{"rendered":"<p>[et_pb_section fb_built=&#8221;1&#8243; admin_label=&#8221;section&#8221; _builder_version=&#8221;4.16&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_row admin_label=&#8221;Imagen principal&#8221; _builder_version=&#8221;4.16&#8243; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.16&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_image src=&#8221;https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/nuevas-funcionalidades.png&#8221; alt=&#8221;cloud-public&#8221; title_text=&#8221;nuevas-funcionalidades&#8221; admin_label=&#8221;Imagen principal&#8221; module_class=&#8221;post-img&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_image][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;Cuerpo&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_text admin_label=&#8221;Texto&#8221; _builder_version=&#8221;4.25.2&#8243; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p>Con la aparici\u00f3n de las \u00faltimas versiones de ABAP se han ido introduciendo nuevas funcionalidades en el lenguaje. Sin embargo, quiz\u00e1s porque a\u00fan no las tenemos asimiladas a la hora de programar o por su desconocimiento, su uso no est\u00e1 muy extendido. En este art\u00edculo hablaremos sobre algunas de estas nuevas funcionalidades. \u00c9stas<strong>\u00a0mejoran la sintaxis en ABAP y agregan nuevas capacidades de lenguaje.<\/strong><\/p>\n<p>Son f\u00e1ciles de usar y reducen la cantidad de l\u00edneas que necesitamos codificar para lograr la misma funcionalidad. Las nuevas funciones de lenguaje se han realizado basadas en anteriores versiones asegurando la compatibilidad entre estas.<\/p>\n<p>En este art\u00edculo nos centraremos en algunas de estas nuevas funcionalidades que se han introducido en ABAP.<\/p>\n<h2>Declaraci\u00f3n de variables:<\/h2>\n<p>A partir de la versi\u00f3n ABAP 7.4, se pierde la importancia de la declaraci\u00f3n previa de variables. SAP reconoce el tipo de datos al que pertenece una variable y delegamos esta elecci\u00f3n. De esta manera,\u00a0<strong>ahorramos l\u00edneas de c\u00f3digo, facilitamos su comprensi\u00f3n y evitamos posibles errores de sintaxis.<\/strong><\/p>\n<p>En este ejemplo podemos ver la declaraci\u00f3n de una tabla interna y de una estructura:<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1679 size-full\" src=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image002-1.png\" alt=\"\" width=\"296\" height=\"141\" \/><\/figure>\n<\/div>\n<p>En versiones anteriores a la 7.4, al llamar a una funci\u00f3n o a un m\u00e9todo con un tipo diferente al esperado, saltaba un \u201c<em>dump\u201d<\/em>\u00a0u obten\u00edamos errores. Al declarar la variable en l\u00ednea, \u00e9sta adquiere el tipo del par\u00e1metro de la funci\u00f3n o del m\u00e9todo. De esta forma obtendremos un c\u00f3digo m\u00e1s din\u00e1mico, ya que, en el caso de modificarse el tipo del par\u00e1metro, tambi\u00e9n lo har\u00e1 nuestra variable.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1687 size-full\" src=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image004-1-1.png\" alt=\"\" width=\"485\" height=\"39\" srcset=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image004-1-1.png 485w, https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image004-1-1-480x39.png 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 485px, 100vw\" \/><\/figure>\n<\/div>\n<p>De la misma forma,\u00a0<strong>usaremos \u201cNew\u201d para la creaci\u00f3n de objetos<\/strong>. Gracias a este comando no tendremos la necesidad de usar el \u201cCREATE OBJECT\u201d as\u00ed como la definici\u00f3n y la referencia tipificada de la variable.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1683 size-full\" src=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image006-.png\" alt=\"\" width=\"525\" height=\"34\" srcset=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image006-.png 525w, https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image006--480x31.png 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 525px, 100vw\" \/><\/figure>\n<\/div>\n<h2>Tablas internas<\/h2>\n<p>\u00c9ste es uno de los puntos donde encontramos m\u00e1s novedades.<\/p>\n<p>A partir de la versi\u00f3n 7.4 tenemos la\u00a0<strong>posibilidad de sustituir el \u201cREAD TABLE\u201d por el \u201c[ ]\u201d (donde indicaremos el \u00edndex de la tabla) o por el \u201cVALUE\u201d.<\/strong><\/p>\n<p>As\u00ed podemos buscar una l\u00ednea en concreto de una tabla interna y guardarlo en una \u201cwork area\u201d ya sea buscando a partir de un \u00edndice de la tabla o bien a partir de los valores de los campos de la tabla que deseamos:<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1691 size-full\" src=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image008-.png\" alt=\"\" width=\"556\" height=\"190\" srcset=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image008-.png 556w, https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image008--480x164.png 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 556px, 100vw\" \/><\/figure>\n<\/div>\n<p>De igual manera podemos\u00a0<strong>obtener el \u00edndice de la tabla<\/strong>\u00a0cuyos campos tienen ciertos valores:<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1695 size-full\" src=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image009-1-.png\" alt=\"\" width=\"523\" height=\"89\" srcset=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image009-1-.png 523w, https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image009-1--480x82.png 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 523px, 100vw\" \/><\/figure>\n<\/div>\n<p><strong>Modificar una entrada de una tabla<\/strong>\u00a0sin la necesidad de un \u201cAssigning Field Symbol\u201d; podremos modificar el valor de un campo de una tabla interna a partir de una condici\u00f3n. En este caso modificamos el campo \u00abBegda\u00bb de la tabla \u201ci_tab\u201d para aquel valor en el que \u201cEndda\u201d tenga el valor de la variable \u201clv_endda\u201d.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1699 \" src=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image011-.png\" alt=\"\" width=\"514\" height=\"54\" srcset=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image011-.png 514w, https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image011--480x50.png 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 514px, 100vw\" \/><\/figure>\n<\/div>\n<p>Utilizar \u201cVALUE\u201d para la lectura de datos de una tabla interna:<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1707 \" src=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image013-1.png\" alt=\"\" width=\"631\" height=\"80\" srcset=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image013-1.png 631w, https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image013-1-480x61.png 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 631px, 100vw\" \/><\/figure>\n<\/div>\n<p>En lugar la opci\u00f3n \u201cOptional\u201d se puede a\u00f1adir un try\/catch recogiendo la excepci\u00f3n CX_SY_ITAB_LINE_NOT_FOUND.<\/p>\n<p>Del mismo modo, tambi\u00e9n podemos utilizar \u201c<strong>VALUE<\/strong>\u201d para modificar una tabla interna. Para ello a\u00f1adiremos la opci\u00f3n de \u201cBASE\u201d, mediante la cual, si est\u00e1 especificada, el contenido de la tabla deseada se asigna al contenido de la tabla de destino y la nueva l\u00ednea se a\u00f1ade a continuaci\u00f3n.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1703 size-full\" src=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image014-.png\" alt=\"\" width=\"524\" height=\"37\" srcset=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image014-.png 524w, https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image014--480x34.png 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 524px, 100vw\" \/><\/figure>\n<\/div>\n<p>En lugar de hacer un \u201cREAD TABLE\u201d y un \u201cIF sy-subrc EQ 0\u201d para comprobar si la tabla contiene datos. De este modo lograremos\u00a0<strong>simplificar nuestro c\u00f3digo<\/strong>, as\u00ed como ahorrarnos sentencias innecesarias.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1717 size-full\" src=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image015-1.png\" alt=\"\" width=\"404\" height=\"67\" srcset=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image015-1.png 404w, https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image015-1-300x50.png 300w, https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image015-1-400x67.png 400w\" sizes=\"auto, (max-width: 404px) 100vw, 404px\" \/><\/figure>\n<\/div>\n<h2>Operaciones de datos<\/h2>\n<p>En este apartado veremos distintas operaciones relativas al\u00a0<strong>procesamiento de datos:<\/strong><\/p>\n<ul>\n<li><strong>ALPHA (IN\/OUT):<\/strong>\u00a0nos permite tanto quitar como a\u00f1adir los ceros iniciales, sin necesidad de llamar a las funciones est\u00e1ndar CONVERSION_EXIT_ALPHA_OUTPUT\/CONVERSION_EXIT_ALPHA_INTPUT.<\/li>\n<\/ul>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1721 size-full\" src=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image016-.png\" alt=\"\" width=\"371\" height=\"92\" srcset=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image016-.png 371w, https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image016--300x74.png 300w\" sizes=\"auto, (max-width: 371px) 100vw, 371px\" \/><\/figure>\n<\/div>\n<p>Adquiriendo en primer lugar \u201clv_pernr = 1001001\u201d, y posteriormente nuevamente \u201clv_pernr = 01001001\u201d (ya que se trata de tipo \u201cNumc\u201d de ocho caracteres.<\/p>\n<ul>\n<li><strong>COND:<\/strong>\u00a0Podremos elegir qu\u00e9 valor asignar a una variable seg\u00fan una condici\u00f3n. Ser\u00eda equivalente a un \u201cIF-ELSE\u201d.<\/li>\n<\/ul>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\">\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1729 size-full\" src=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image017-1-.png\" alt=\"\" width=\"442\" height=\"81\" srcset=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image017-1-.png 442w, https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image017-1--300x55.png 300w\" sizes=\"auto, (max-width: 442px) 100vw, 442px\" \/><\/figure>\n<\/div>\n<ul>\n<li><strong>CONV:\u00a0<\/strong>Esta instrucci\u00f3n nos permite aplicar a nuestra variable el tipo de destino. De esta forma nos evitamos problemas de incompatibilidades a la hora de llamar a\u00a0<strong>funciones<\/strong>, o a la hora de pasar los par\u00e1metros a un m\u00e9todo de una clase. En este ejemplo al par\u00e1metro \u201cpernr\u201d del tipo \u201cP_PERNR\u201d le estamos pasando una variable de tipo string, que sin el comando CONV no ser\u00eda posible:<\/li>\n<\/ul>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1725 size-full\" src=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image018-png.png\" alt=\"\" width=\"271\" height=\"200\" \/><\/figure>\n<\/div>\n<ul>\n<li><strong>Concatenar variables:<\/strong>\u00a0A partir de la versi\u00f3n 7.4 podremos concatenar variables sin importar el tipo que sea:<\/li>\n<\/ul>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1733 size-full\" src=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image019-.png\" alt=\"\" width=\"528\" height=\"31\" srcset=\"https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image019-.png 528w, https:\/\/orekait.com\/wp-content\/uploads\/2023\/12\/image019--480x28.png 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 528px, 100vw\" \/><\/figure>\n<\/div>\n<p>Donde la variable \u201clv_text_pernr\u201d ser\u00e1 del tipo String de longitud 35. Conviene prestar atenci\u00f3n a los espacios en blanco entre los elementos concatenados.<\/p>\n<p>Os contamos nuevas funcionalidades ABAP en\u00a0<a href=\"https:\/\/orekait.com\/blog\/nuevas-funcionalidades-de-lenguaje-ii\/\" target=\"_blank\" rel=\"noreferrer noopener\">la segunda parte de este art\u00edculo<\/a>. No dudes en contactar con el equipo de HXM para aclarar cualquier duda.<\/p>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;M\u00e1s informaci\u00f3n&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p class=\"morado\">M\u00e1s informaci\u00f3n:<\/p>\n<p>[\/et_pb_text][et_pb_button button_url=&#8221;https:\/\/orekait.com\/es\/area-recursos-humanos&#8221; button_text=&#8221;M\u00e1s informaci\u00f3n&#8221; module_class=&#8221;entrada-btn&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; custom_button=&#8221;on&#8221; button_text_color=&#8221;#8156EA&#8221; button_bg_color=&#8221;RGBA(255,255,255,0)&#8221; button_border_color=&#8221;#8156EA&#8221; button_border_radius=&#8221;30px&#8221; button_font=&#8221;Plus Jakarta Sans|600|||||||&#8221; button_icon=&#8221;&#x24;||divi||400&#8243; button_icon_color=&#8221;#8156EA&#8221; button_on_hover=&#8221;off&#8221; hover_enabled=&#8221;0&#8243; global_colors_info=&#8221;{}&#8221; button_text_color__hover_enabled=&#8221;on|desktop&#8221; button_text_color__hover=&#8221;#8156EA&#8221; button_bg_color__hover_enabled=&#8221;on|hover&#8221; button_bg_color__hover=&#8221;#8156EA&#8221; button_bg_enable_color__hover=&#8221;on&#8221; button_icon_color__hover_enabled=&#8221;on|hover&#8221; button_icon_color__hover=&#8221;#ffffff&#8221; url_new_window=&#8221;on&#8221; sticky_enabled=&#8221;0&#8243;][\/et_pb_button][et_pb_divider show_divider=&#8221;off&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; custom_margin=&#8221;||40px||false|false&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_divider][\/et_pb_column][\/et_pb_row][et_pb_row use_custom_gutter=&#8221;on&#8221; admin_label=&#8221;Noticias relacionadas titulo&#8221; module_id=&#8221;fondo-articulos&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;#f7f7f7&#8243; width=&#8221;100%&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_divider show_divider=&#8221;off&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;RGBA(255,255,255,0)&#8221; custom_margin=&#8221;||40px||false|false&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_divider][et_pb_heading title=&#8221;Quizas te pueda interesar&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; title_level=&#8221;h2&#8243; title_text_align=&#8221;center&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_heading][et_pb_divider show_divider=&#8221;off&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; custom_margin=&#8221;||30px||false|false&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_divider][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;Noticias relacionadas&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; width=&#8221;100%&#8221; custom_margin=&#8221;-150px||||false|false&#8221; custom_margin_tablet=&#8221;0px||||false|false&#8221; custom_margin_phone=&#8221;0px||||false|false&#8221; custom_margin_last_edited=&#8221;on|desktop&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_blog fullwidth=&#8221;off&#8221; posts_number=&#8221;3&#8243; include_categories=&#8221;current&#8221; show_author=&#8221;off&#8221; show_date=&#8221;off&#8221; show_pagination=&#8221;off&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_blog][\/et_pb_column][\/et_pb_row][\/et_pb_section]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Con la aparici\u00f3n de las \u00faltimas versiones de ABAP se han ido introduciendo nuevas funcionalidades en el lenguaje. Sin embargo, quiz\u00e1s porque a\u00fan no las tenemos asimiladas a la hora de programar o por su desconocimiento, su uso no est\u00e1 muy extendido. En este art\u00edculo hablaremos sobre algunas de estas nuevas funcionalidades. \u00c9stas\u00a0mejoran la sintaxis [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":1673,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"Lorem ipsum dolor sit amet consectetur adipiscing elit congue montes, imperdiet taciti erat elementum fermentum sem ante ultrices ridiculus, sagittis sociis egestas quisque ac semper quis odio. Aenean hendrerit ac metus dis nascetur aliquet mollis integer, rutrum vel laoreet posuere proin sagittis luctus est, tempus duis nisl ultrices parturient tempor praesent. Dignissim curabitur nascetur pellentesque augue fringilla pulvinar eros, tempus fames vehicula maecenas cubilia id, rutrum euismod integer ut scelerisque mus.\r\n\r\nVivamus auctor odio aenean rhoncus natoque dictum purus, volutpat pellentesque laoreet ridiculus consequat nisi varius euismod, augue platea convallis curae magnis taciti. Imperdiet nibh curabitur quisque orci consequat aenean pellentesque, cubilia duis senectus felis sed posuere tortor, magnis enim diam a odio sociis. Enim tellus nisl nec molestie augue luctus tempor habitant, nunc dictumst phasellus volutpat sem facilisis taciti, habitasse laoreet at turpis vel fermentum vulputate.","_et_gb_content_width":"","footnotes":""},"categories":[36,37],"tags":[],"class_list":["post-1671","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-recursos-humanos","category-sap-hxm"],"_links":{"self":[{"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/posts\/1671","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/comments?post=1671"}],"version-history":[{"count":7,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/posts\/1671\/revisions"}],"predecessor-version":[{"id":20724,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/posts\/1671\/revisions\/20724"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/media\/1673"}],"wp:attachment":[{"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/media?parent=1671"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/categories?post=1671"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/tags?post=1671"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}