格式化程序未调用

2020-09-18 19:33发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,我不知道为什么不调用格式化程序,如果不调用格式化程序,则会显示该值,但是如果从视图中调用格式化程序,则不会显示

 
 

在我的Ontroller中

 sap.ui.define([
 " jquery.sap.global",
 " sap/ui/core/mvc/Controller",
 " sap/m/MessageToast",
 " sap/ui/model/json/JSONModel",
 " sap/ui/model/odata/ODataModel",
 " sap/ui/base/ManagedObject",
 " sap/ui/model/odata/v2/ODataModel",
 " Dash/Asesor/controller/formatter",
 " sap/ui/model/Filter"
 ],函数(jQuery,Controller,MessageToast,JSONModel,ODataModel,ManagedObject,ODataModel2,格式化程序,过滤器){
 "使用严格";

 return Controller.extend(" Dash.Asesor.controller.Main",{

 格式化程序:格式化程序,

 onInit:function(){
 this.varGlob = new JSONModel();
 this.varGlob.asesor ="";

 this.oDialog();
 },

 getInfo:function(){
 var tablaCitas = this.byId(" tabInfoCitas");
 this.varGlob.asesor = this.byId(" usuario")。getValue();
 var sURI ="/img/sap/opu/odata/SAP/ZERP_ACTIVIDADES_SRV";
     var oDataModel = new ODataModel(sURI,true);
     var oModel = new JSONModel();
    
     var oFilter = new Filter(" Asesor"," EQ",this.varGlob.asesor);
     oDataModel.read("/img/ReservaSet?$ filter = Asesor eq'" + this.varGlob.asesor +"'",{
//过滤器:[oFilter],
     成功:函数(oData,响应){
     var oResults = oData.results;
     oModel.setData(oData.results);
     tablaCitas.setModel(oModel);
     },
     错误:function(oError){
     }
             },1000);
     this.closeDialog();
 },

 oDialog:function(){
 var oView = this.getView();
 var oDialog = oView.byId(" userDialog");
//懒惰地创建对话框
 如果(!oDialog){
//通过片段工厂创建对话框
 oDialog = sap.ui.xmlfragment(oView.getId()," Dash.Asesor.view.Popup_usuario",此);
 oView.addDependent(oDialog);
 }




 oDialog.open(); //Abrimos el dialogo
 },//oDialog

 closeDialog:function(){
 this.getView()。byId('userDialog')。close();
 },

 });
 });

 

这是我的格式化程序:

 sap.ui.define([],function(){
 "使用严格";

 返回{
 fecha_f:函数(sTimestamp){

//Pasamos la fecha一个una变量
 var sResult_f = sTimestamp;
//Paso变量a String para poder manejar
 如果(sResult_f ==""){
 返回sResult_f;
 }其他{


 sResult_f = sResult_f.toString();

 var fecha = sResult_f.substr(6,2)+"-" +
 sResult_f.substr(4,2)+"-" +
 sResult_f.substr(0,4);

 返回fecha; //可乐城的加拉莫斯控制城
 }

 },

 hora_f:function(sTimestamp){
//Pasamos la fecha一个una变量
 var sResult_f = sTimestamp;
//Paso变量a String para poder manejar
 如果(sResult_f ==""){
 返回sResult_f;
 }其他{
 sResult_f = sResult_f.toString();
 var hora = sResult_f.substr(8,2)+":" + sResult_f.substr(10,2);

 返回霍拉
 }
 },

 oldHora:函数(sHora){
 var Hora = parseInt(sHora.substr(8,2));
 var Minu = parseInt(sHora.substr(10,2));
 var d = new Date();
 var h = d.getHours();
 var m = d.getMinutes();
 如果(Hora> h){
 返回"错误";
 }

 如果(Hora  = 0 && Minu <= 29){
 如果(m <= 29){
 返回"无";
 }其他{
 返回"成功";
 }
 }
 如果(Minu> = 30 && Minu <= 59){
 如果(m> = 30){
 返回"无";
 }其他{
 返回"错误";
 }
 }

 }

 },

 图标:function(timeStamp){

 var Hora = parseInt(timeStamp.substr(8,2));
 var Minu = parseInt(timeStamp.substr(10,2));
 var d = new Date();
 var h = d.getHours();
 var m = d.getMinutes();
 如果(Hora> h){
 返回" sap-icon://away";
 }
 如果(Hora  = 0 && Minu <= 29){
 如果(m <= 29){
 返回" sap-icon://share";
 }其他{
 返回" sap-icon://accept";
 }
 }

 如果(Minu> = 30 && Minu <= 59){
 如果(m> = 30){
 返回" sap-icon://share";
 }其他{
 返回" sap-icon://away";
 }
 }


 }

 }
 }
 });
 

我更改了文件夹格式化程序,什么也没做,可能是什么? 我放了一些断点,看问题是否出在格式化程序上,我注意到那不是它的名称:/

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,我不知道为什么不调用格式化程序,如果不调用格式化程序,则会显示该值,但是如果从视图中调用格式化程序,则不会显示

 
 

在我的Ontroller中

 sap.ui.define([
 " jquery.sap.global",
 " sap/ui/core/mvc/Controller",
 " sap/m/MessageToast",
 " sap/ui/model/json/JSONModel",
 " sap/ui/model/odata/ODataModel",
 " sap/ui/base/ManagedObject",
 " sap/ui/model/odata/v2/ODataModel",
 " Dash/Asesor/controller/formatter",
 " sap/ui/model/Filter"
 ],函数(jQuery,Controller,MessageToast,JSONModel,ODataModel,ManagedObject,ODataModel2,格式化程序,过滤器){
 "使用严格";

 return Controller.extend(" Dash.Asesor.controller.Main",{

 格式化程序:格式化程序,

 onInit:function(){
 this.varGlob = new JSONModel();
 this.varGlob.asesor ="";

 this.oDialog();
 },

 getInfo:function(){
 var tablaCitas = this.byId(" tabInfoCitas");
 this.varGlob.asesor = this.byId(" usuario")。getValue();
 var sURI ="/img/sap/opu/odata/SAP/ZERP_ACTIVIDADES_SRV";
     var oDataModel = new ODataModel(sURI,true);
     var oModel = new JSONModel();
    
     var oFilter = new Filter(" Asesor"," EQ",this.varGlob.asesor);
     oDataModel.read("/img/ReservaSet?$ filter = Asesor eq'" + this.varGlob.asesor +"'",{
//过滤器:[oFilter],
     成功:函数(oData,响应){
     var oResults = oData.results;
     oModel.setData(oData.results);
     tablaCitas.setModel(oModel);
     },
     错误:function(oError){
     }
             },1000);
     this.closeDialog();
 },

 oDialog:function(){
 var oView = this.getView();
 var oDialog = oView.byId(" userDialog");
//懒惰地创建对话框
 如果(!oDialog){
//通过片段工厂创建对话框
 oDialog = sap.ui.xmlfragment(oView.getId()," Dash.Asesor.view.Popup_usuario",此);
 oView.addDependent(oDialog);
 }




 oDialog.open(); //Abrimos el dialogo
 },//oDialog

 closeDialog:function(){
 this.getView()。byId('userDialog')。close();
 },

 });
 });

 

这是我的格式化程序:

 sap.ui.define([],function(){
 "使用严格";

 返回{
 fecha_f:函数(sTimestamp){

//Pasamos la fecha一个una变量
 var sResult_f = sTimestamp;
//Paso变量a String para poder manejar
 如果(sResult_f ==""){
 返回sResult_f;
 }其他{


 sResult_f = sResult_f.toString();

 var fecha = sResult_f.substr(6,2)+"-" +
 sResult_f.substr(4,2)+"-" +
 sResult_f.substr(0,4);

 返回fecha; //可乐城的加拉莫斯控制城
 }

 },

 hora_f:function(sTimestamp){
//Pasamos la fecha一个una变量
 var sResult_f = sTimestamp;
//Paso变量a String para poder manejar
 如果(sResult_f ==""){
 返回sResult_f;
 }其他{
 sResult_f = sResult_f.toString();
 var hora = sResult_f.substr(8,2)+":" + sResult_f.substr(10,2);

 返回霍拉
 }
 },

 oldHora:函数(sHora){
 var Hora = parseInt(sHora.substr(8,2));
 var Minu = parseInt(sHora.substr(10,2));
 var d = new Date();
 var h = d.getHours();
 var m = d.getMinutes();
 如果(Hora> h){
 返回"错误";
 }

 如果(Hora  = 0 && Minu <= 29){
 如果(m <= 29){
 返回"无";
 }其他{
 返回"成功";
 }
 }
 如果(Minu> = 30 && Minu <= 59){
 如果(m> = 30){
 返回"无";
 }其他{
 返回"错误";
 }
 }

 }

 },

 图标:function(timeStamp){

 var Hora = parseInt(timeStamp.substr(8,2));
 var Minu = parseInt(timeStamp.substr(10,2));
 var d = new Date();
 var h = d.getHours();
 var m = d.getMinutes();
 如果(Hora> h){
 返回" sap-icon://away";
 }
 如果(Hora  = 0 && Minu <= 29){
 如果(m <= 29){
 返回" sap-icon://share";
 }其他{
 返回" sap-icon://accept";
 }
 }

 如果(Minu> = 30 && Minu <= 59){
 如果(m> = 30){
 返回" sap-icon://share";
 }其他{
 返回" sap-icon://away";
 }
 }


 }

 }
 }
 });
 

我更改了文件夹格式化程序,什么也没做,可能是什么? 我放了一些断点,看问题是否出在格式化程序上,我注意到那不是它的名称:/

付费偷看设置
发送
6条回答
路亽曱_Ryan
1楼-- · 2020-09-18 19:55

将格式化程序放在哪里?

xfwsx85
2楼-- · 2020-09-18 19:57

您能否发布整个控制器的代码?

也许项目的结构也可能是一件好事

木偶小白
3楼-- · 2020-09-18 19:51

如果url是正确的,并且正如我所见,您可以从视图中正确调用它,那么,也许是:

" Dash/Asesor/controller/formatter",
 " sap/ui/model/Filter"
 ],函数(Jquery,Controller,MessageToast,JSONModel,ODataModel,ManagedObject,ODataModel2,格式化程序,过滤器){

检查" sap.ui.define"上的参数是否与函数中的参数(Jquery,Controller,MessageToast ...)相同,并且它们的顺序正确。

希望这会有所帮助,

此致。

野沐沐
4楼-- · 2020-09-18 19:35

完成! 请检查您是否发现有误://让我知道,谢谢!!!

软件心理学工程师
5楼-- · 2020-09-18 19:50

位置在哪里? 在名为controller的文件夹中

何必丶何苦呢
6楼-- · 2020-09-18 19:36

可能的事情:

  • 文件名不同。
  • 该文件不在控制器文件夹中

最后,最有可能的是:

您的格式化程序文件存在语法错误,您无法调用它,因为...浏览器无法加载它。

尝试仅放置1个功能,并提供以下简单功能:

 sap.ui.define([],function(){
 "使用严格";

 返回{
 testFunction:函数(sVal){
 返回sVal +" a";
 },
 }
 }); 

而且,只能将其用作:

  

让我们看看是否可行。

此外,检查文件是否已在源控制台F12上加载。

一周热门 更多>