diff --git a/Lançamento de documentos/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi b/Lançamento de documentos/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi index 1899e3e..1c35dce 100644 --- a/Lançamento de documentos/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi +++ b/Lançamento de documentos/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi @@ -7,6 +7,9 @@ + + + topLevel @@ -192,7 +195,6 @@ active - noFocus View categoryTag:Java @@ -451,6 +453,7 @@ View categoryTag:Java active + activeOnClose ViewMenu menuContribution:menu @@ -512,7 +515,7 @@ Draggable - + toolbarSeparator @@ -549,10 +552,7 @@ Draggable - - - - Draggable + Draggable @@ -1918,18 +1918,18 @@ View categoryTag:General - - + + glue move_after:PerspectiveSpacer SHOW_RESTORE_MENU - + move_after:Spacer Glue HIDEABLE SHOW_RESTORE_MENU - + glue move_after:SearchField SHOW_RESTORE_MENU diff --git a/Lançamento de documentos/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log b/Lançamento de documentos/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log index 882fc2f..43fd93d 100644 --- a/Lançamento de documentos/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log +++ b/Lançamento de documentos/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log @@ -1 +1,2 @@ 2026-03-12 10:11:35,412 [Worker-5: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is out-of-date. Trying to update. +2026-03-16 18:19:59,450 [Worker-2: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is out-of-date. Trying to update. diff --git a/Lançamento de documentos/lançamentos/workflow/.resources/FlowEssentials_LancamentodeDocumento.png b/Lançamento de documentos/lançamentos/workflow/.resources/FlowEssentials_LancamentodeDocumento.png index 5cb9992..0241398 100644 Binary files a/Lançamento de documentos/lançamentos/workflow/.resources/FlowEssentials_LancamentodeDocumento.png and b/Lançamento de documentos/lançamentos/workflow/.resources/FlowEssentials_LancamentodeDocumento.png differ diff --git a/Transferência Ginseng/.metadata/.log b/Transferência Ginseng/.metadata/.log index 2da9964..0c5d3fa 100644 --- a/Transferência Ginseng/.metadata/.log +++ b/Transferência Ginseng/.metadata/.log @@ -12,3 +12,52 @@ user global configuration and to define the default location to store repositori not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and EGit might behave differently since they see different configuration options. This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. +!SESSION 2026-03-16 18:19:56.660 ----------------------------------------------- +eclipse.buildId=4.13.0.I20190916-1045 +java.version=1.8.0_481 +java.vendor=Oracle Corporation +BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=pt_BR +Framework arguments: -product org.eclipse.epp.package.jee.product +Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product + +!ENTRY org.eclipse.egit.ui 2 0 2026-03-16 18:20:21.188 +!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git +user global configuration and to define the default location to store repositories: 'C:\Users\Home'. If this is +not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and +EGit might behave differently since they see different configuration options. +This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. + +!ENTRY org.eclipse.ui.navigator.resources 4 0 2026-03-16 18:20:36.243 +!MESSAGE Could not acquire INavigatorContentService: Project Explorer not found. + +!ENTRY org.eclipse.ui.ide 4 0 2026-03-16 18:22:29.402 +!MESSAGE Could not import project located at C:\Python\Fluig Ginseng\fluig\checklist\fluig\Transferência Ginseng +!STACK 0 +org.eclipse.ui.internal.wizards.datatransfer.CouldNotImportProjectException: Could not import project located at C:\Python\Fluig Ginseng\fluig\checklist\fluig\Transferência Ginseng + at org.eclipse.ui.internal.wizards.datatransfer.SmartImportJob.toExistingOrNewProject(SmartImportJob.java:565) + at org.eclipse.ui.internal.wizards.datatransfer.SmartImportJob.run(SmartImportJob.java:252) + at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) +Caused by: org.eclipse.core.internal.resources.ResourceException: Invalid project description. + at org.eclipse.core.internal.resources.Project.checkDescription(Project.java:173) + at org.eclipse.core.internal.resources.Project.assertCreateRequirements(Project.java:57) + at org.eclipse.core.internal.resources.Project.create(Project.java:267) + at org.eclipse.core.internal.resources.Project.create(Project.java:251) + at org.eclipse.ui.internal.wizards.datatransfer.SmartImportJob.createOrImportProject(SmartImportJob.java:604) + at org.eclipse.ui.internal.wizards.datatransfer.SmartImportJob.toExistingOrNewProject(SmartImportJob.java:552) + ... 2 more + +!ENTRY org.eclipse.ui.ide 4 0 2026-03-16 18:22:41.890 +!MESSAGE Could not import project located at C:\Python\Fluig Ginseng\fluig\checklist\fluig\Transferência Ginseng +!STACK 0 +org.eclipse.ui.internal.wizards.datatransfer.CouldNotImportProjectException: Could not import project located at C:\Python\Fluig Ginseng\fluig\checklist\fluig\Transferência Ginseng + at org.eclipse.ui.internal.wizards.datatransfer.SmartImportJob.toExistingOrNewProject(SmartImportJob.java:565) + at org.eclipse.ui.internal.wizards.datatransfer.SmartImportJob.run(SmartImportJob.java:252) + at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) +Caused by: org.eclipse.core.internal.resources.ResourceException: Invalid project description. + at org.eclipse.core.internal.resources.Project.checkDescription(Project.java:173) + at org.eclipse.core.internal.resources.Project.assertCreateRequirements(Project.java:57) + at org.eclipse.core.internal.resources.Project.create(Project.java:267) + at org.eclipse.core.internal.resources.Project.create(Project.java:251) + at org.eclipse.ui.internal.wizards.datatransfer.SmartImportJob.createOrImportProject(SmartImportJob.java:604) + at org.eclipse.ui.internal.wizards.datatransfer.SmartImportJob.toExistingOrNewProject(SmartImportJob.java:552) + ... 2 more diff --git a/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.resources/.root/1.tree b/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.resources/.root/2.tree similarity index 100% rename from Transferência Ginseng/.metadata/.plugins/org.eclipse.core.resources/.root/1.tree rename to Transferência Ginseng/.metadata/.plugins/org.eclipse.core.resources/.root/2.tree diff --git a/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources b/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources index a38923e..a8bce7e 100644 Binary files a/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources and b/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources differ diff --git a/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs b/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs index dffc6b5..a7fb09f 100644 --- a/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs +++ b/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs @@ -1,2 +1,3 @@ +description.autobuilding=false eclipse.preferences.version=1 version=1 diff --git a/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs b/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs new file mode 100644 index 0000000..98d8634 --- /dev/null +++ b/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=\r\n\r\n diff --git a/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.rse.core.prefs b/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.rse.core.prefs index e1b93a4..f04b0bd 100644 --- a/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.rse.core.prefs +++ b/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.rse.core.prefs @@ -1,2 +1,2 @@ -activeuserprofiles=G-ALES1NT-TEC06;Team +activeuserprofiles=DESKTOP-0E2LAA6;G-ALES1NT-TEC06;Team eclipse.preferences.version=1 diff --git a/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs b/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs index cfde2cb..c39ff58 100644 --- a/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs +++ b/Transferência Ginseng/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs @@ -1,5 +1,5 @@ PROBLEMS_FILTERS_MIGRATE=true eclipse.preferences.version=1 -platformState=1741352421205 +platformState=1772394940336 quickStart=false tipsAndTricks=true diff --git a/Transferência Ginseng/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi b/Transferência Ginseng/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi index 405ecfd..cf9a66e 100644 --- a/Transferência Ginseng/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi +++ b/Transferência Ginseng/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi @@ -13,7 +13,7 @@ topLevel shellMaximized - + persp.actionSet:org.eclipse.mylyn.doc.actionSet @@ -76,7 +76,6 @@ persp.perspSC:org.eclipse.jpt.ui.jpaPerspective - active View categoryTag:General @@ -161,6 +160,93 @@ + + + persp.actionSet:org.eclipse.mylyn.doc.actionSet + persp.actionSet:org.eclipse.mylyn.tasks.ui.navigation + persp.actionSet:org.eclipse.ui.cheatsheets.actionSet + persp.actionSet:org.eclipse.rse.core.search.searchActionSet + persp.actionSet:org.eclipse.search.searchActionSet + persp.actionSet:org.eclipse.text.quicksearch.actionSet + persp.actionSet:org.eclipse.ui.edit.text.actionSet.annotationNavigation + persp.actionSet:org.eclipse.ui.edit.text.actionSet.navigation + persp.actionSet:org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo + persp.actionSet:org.eclipse.ui.externaltools.ExternalToolsSet + persp.actionSet:org.eclipse.ui.actionSet.keyBindings + persp.actionSet:org.eclipse.ui.actionSet.openFiles + persp.actionSet:org.eclipse.wst.jsdt.chromium.debug.ui.actionSets + persp.newWizSC:org.eclipse.ui.wizards.new.folder + persp.newWizSC:org.eclipse.ui.wizards.new.file + persp.viewSC:org.eclipse.ui.views.BookmarkView + persp.viewSC:org.eclipse.ui.views.PropertySheet + persp.viewSC:org.eclipse.ui.views.ProblemView + persp.viewSC:org.eclipse.ui.views.ProgressView + persp.actionSet:org.eclipse.ui.NavigateActionSet + persp.newWizSC:com.totvs.tds.ecm.designer.eclipse.ui.CreateBpmnProjectWizardID + persp.newWizSC:com.totvs.tds.ecm.designer.eclipse.ui.CreateBpmnDiagramWizardID + persp.newWizSC:com.totvs.tds.ecm.designer.eclipse.ui.CreateScriptGeneralWizardID + persp.newWizSC:com.totvs.tds.ecm.designer.eclipse.ui.CreateFormWizardID + persp.newWizSC:com.totvs.tds.ecm.designer.eclipse.ui.CreateReportWizardID + persp.newWizSC:com.totvs.tds.ecm.designer.eclipse.ui.CreateDatasetWizardID + persp.newWizSC:com.totvs.tds.ecm.designer.eclipse.ui.CreateEventWizardID + persp.newWizSC:com.fluig.wcm.eclipse.component.wizard.CreateLayoutWizardID + persp.newWizSC:com.fluig.wcm.eclipse.component.wizard.CreateWidgetWizardID + persp.showIn:org.eclipse.tm.terminal.view.ui.TerminalsView + + + + active + + View + categoryTag:Java + + + View + categoryTag:General + + + View + categoryTag:Fluig + + + + + View + categoryTag:General + + + + + + + + View + categoryTag:General + + + View + categoryTag:General + + + View + categoryTag:General + + + View + categoryTag:Fluig + + + View + categoryTag:Fluig + + + View + categoryTag:Fluig + + + + + @@ -213,8 +299,6 @@ View categoryTag:General - active - activeOnClose ViewMenu menuContribution:menu @@ -254,8 +338,14 @@ + View categoryTag:General + + ViewMenu + menuContribution:menu + + @@ -335,6 +425,62 @@ View categoryTag:General + + + + + View + categoryTag:Java + active + activeOnClose + + ViewMenu + menuContribution:menu + + + + + + + + View + categoryTag:Fluig + + ViewMenu + menuContribution:menu + + + + + + + + View + categoryTag:General + + ViewMenu + menuContribution:menu + + + + + + + View + categoryTag:Fluig + + + + + View + categoryTag:Fluig + + + + + View + categoryTag:Fluig + toolbarSeparator @@ -342,7 +488,7 @@ Draggable - + toolbarSeparator @@ -358,16 +504,16 @@ Draggable - + Draggable Draggable - + Draggable - + Draggable @@ -376,7 +522,7 @@ Draggable - + toolbarSeparator @@ -409,11 +555,6 @@ Draggable - - - - Draggable - @@ -3067,7 +3208,7 @@ - + diff --git a/Transferência Ginseng/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml b/Transferência Ginseng/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml new file mode 100644 index 0000000..3fcc57a --- /dev/null +++ b/Transferência Ginseng/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml @@ -0,0 +1,10 @@ + +
+
+ + + + + +
+
diff --git a/Transferência Ginseng/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log b/Transferência Ginseng/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log index a89757c..74a8a76 100644 --- a/Transferência Ginseng/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log +++ b/Transferência Ginseng/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log @@ -1 +1,2 @@ 2025-05-26 12:44:36,966 [Worker-5: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read. +2026-03-16 18:20:20,734 [Worker-2: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read. diff --git a/Transferência Ginseng/.metadata/.plugins/org.eclipse.pde.core/.cache/clean-cache.properties b/Transferência Ginseng/.metadata/.plugins/org.eclipse.pde.core/.cache/clean-cache.properties new file mode 100644 index 0000000..866b111 --- /dev/null +++ b/Transferência Ginseng/.metadata/.plugins/org.eclipse.pde.core/.cache/clean-cache.properties @@ -0,0 +1,2 @@ +#Cached timestamps +#Mon Mar 16 18:23:37 GFT 2026 diff --git a/Transferência Ginseng/.metadata/.plugins/org.eclipse.tm.terminal.view.ui/.executables/data.properties b/Transferência Ginseng/.metadata/.plugins/org.eclipse.tm.terminal.view.ui/.executables/data.properties new file mode 100644 index 0000000..90344df --- /dev/null +++ b/Transferência Ginseng/.metadata/.plugins/org.eclipse.tm.terminal.view.ui/.executables/data.properties @@ -0,0 +1,6 @@ +#Mon Mar 16 18:20:15 GFT 2026 +0.Path=C\:\\Program Files\\Git\\bin\\sh.exe +0.Name=Git Bash +0.Args=--login -i +0.Translate=true +0.Icon=C\:\\Program Files\\Git\\mingw64\\share\\git\\git-for-windows.ico diff --git a/Transferência Ginseng/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml b/Transferência Ginseng/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml index 89a7168..628f10d 100644 --- a/Transferência Ginseng/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml +++ b/Transferência Ginseng/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml @@ -3,10 +3,13 @@
- - + + +
+
+
diff --git a/Transferência Ginseng/.metadata/version.ini b/Transferência Ginseng/.metadata/version.ini index 597b8a5..26d6c14 100644 --- a/Transferência Ginseng/.metadata/version.ini +++ b/Transferência Ginseng/.metadata/version.ini @@ -1,3 +1,3 @@ -#Mon May 26 12:44:22 BRT 2025 +#Mon Mar 16 18:20:13 GFT 2026 org.eclipse.core.runtime=2 org.eclipse.platform=4.13.0.v20190916-1045 diff --git a/Transferência Ginseng/.vscode/servers.json b/Transferência Ginseng/.vscode/servers.json new file mode 100644 index 0000000..e88a557 --- /dev/null +++ b/Transferência Ginseng/.vscode/servers.json @@ -0,0 +1,18 @@ +{ + "version": "1.0.0", + "configurations": [ + { + "id": "edmoa4q9botmmtlvdz4bafosc5mqmr", + "name": "teste", + "host": "comerciode188007.fluig.cloudtotvs.com.br", + "ssl": true, + "port": 443, + "username": "andrey.cunha", + "password": "eyJpdiI6ImRjNGY4YzFkZmNiM2FhNDJiMGE3NDlmYjI5YjFkZjBhIiwic2FsdCI6IjU2MzUzZTcxOGZjZGRjZmUwZDI4MWYxZTllOWFlMDM3IiwidGV4dCI6IjU1NWQxZTE3YzUwYTQwYjNjMzAwYTc3M2VmNWQwODU1In0=", + "userCode": "andrey.cunha", + "confirmExporting": false, + "hasBrowser": false, + "companyId": 1 + } + ] +} \ No newline at end of file diff --git a/Transferência Ginseng/com.totvs.tds.ecm.dataservers b/Transferência Ginseng/com.totvs.tds.ecm.dataservers new file mode 100644 index 0000000..55d4f3c Binary files /dev/null and b/Transferência Ginseng/com.totvs.tds.ecm.dataservers differ diff --git a/Transferência Ginseng/datasets/dsFiliais.js b/Transferência Ginseng/datasets/dsFiliais.js deleted file mode 100644 index 6857774..0000000 --- a/Transferência Ginseng/datasets/dsFiliais.js +++ /dev/null @@ -1,104 +0,0 @@ -function defineStructure() { - -} -function onSync(lastSyncDate) { - -} -function createDataset(fields, constraints, sortFields) { - - var ds = DatasetBuilder.newDataset(); - - ds.addColumn("codigo"); - ds.addColumn("filial"); - ds.addColumn("estabelecimento"); - ds.addColumn("cep"); - ds.addColumn("logradouro"); - ds.addColumn("numero"); - ds.addColumn("bairro"); - ds.addColumn("cidade"); - ds.addColumn("estado"); - - - - ds.addRow(new Array("010101","4494", "ESCRITÓRIO MATRIZ","57035-030","RUA DESPORTISTA HUMBERTO GUIMARAES","343","PONTA VERDE","MACEIÓ","AL")); - ds.addRow(new Array("010102","3546", "LJ BIG BOMPREÇO GRUTA","57052-000","AVENIDA FERNANDES LIMA","3700","GRUTA DE LOURDES","MACEIÓ","AL")); - ds.addRow(new Array("010103","4560", "LJ MACEIÓ SHOPPING TERREO","57031-532","AVENIDA GUSTAVO PAIVA","2900","MANGABEIRAS","MACEIÓ","AL")); - ds.addRow(new Array("010104","5699", "LJ MOREIRA LIMA","57020-000","RUA MOREIRA LIMA","93","CENTRO","MACEIÓ","AL")); - ds.addRow(new Array("010106","12522", "LJ MACEIÓ SHOPPING EXPANSÃO","57031-530","AVENIDA GUSTAVO PAIVA","2990","MANGABEIRAS","MACEIÓ","AL")); - ds.addRow(new Array("010107","12828", "LJ GBARBOSA S.MARIS","57036-550","AV ENG. PAULO BRANDÃO NOGUEIRA","S/N","JATIÚCA","MACEIÓ","AL")); - ds.addRow(new Array("010108","12838", "LJ RIO LARGO","57100-000","AV PRES GETULIO VARGAS","148","CENTRO","RIO LARGO","AL")); - ds.addRow(new Array("010109","21647", "QUIOSQUE CARAJÁS MANGABEIRAS","57037-901","AV COMENDADOR GUSTAVO PAIVA","S/N","MANGABEIRAS","MACEIÓ","AL")); - ds.addRow(new Array("010110","12817", "LJ SHOPPING PÁTIO","57073-470","AV MENINO MARCELO","3800","CIDADE UNIVERSITÁRIA","MACEIÓ","AL")); - ds.addRow(new Array("010111","12824", "QUIOSQUE GBARBOSA TABULEIRO","57061-110","AVENIDA MACEIÓ","S/N","TABULEIRO","MACEIÓ","AL")); - ds.addRow(new Array("010112","12823", "LJ PONTA VERDE","57035-330","RUA DEPUTADO JOSÉ LAGES","431","PONTA VERDE","MACEIÓ","AL")); - ds.addRow(new Array("010113","20858", "QUIOSQUE SUPER GIRO","57010-003","AVENIDA SIQUEIRA CAMPOS","1368","PRADO","MACEIÓ","AL")); - ds.addRow(new Array("010114","12820", "LJ ATACADÃO TABULEIRO","57082-160","AV DOUTOR DURVAL DE GOIS MONTEIRO","12650","TABULEIRO","MACEIÓ","AL")); - ds.addRow(new Array("010115","12830", "LJ LIVRAMENTO","57020-030","RUA DO LIVRAMENTO","24","CENTRO","MACEIÓ","AL")); - ds.addRow(new Array("010117","19103", "LJ UNICOMPRA PONTA VERDE","57035-060","RUA DURVAL GUIMARÃES","S/N","PONTA VERDE","MACEIÓ","AL")); - ds.addRow(new Array("010118","12826", "LJ ASSAÍ MANGABEIRAS","57037-532","AV COMENDADOR GUSTAVO PAIVA","3261","MANGABEIRAS","MACEIÓ","AL")); - ds.addRow(new Array("010119","12829", "LJ JACINTINHO","57041-000","RUA CLETO CAMPELO","2394","JACINTINHO","MACEIÓ","AL")); - ds.addRow(new Array("010120","12818", "LJ GBARBOSA SERRARIA","57046-000","AVENIDA MENINO MARCELO","9730","SERRARIA","MACEIÓ","AL")); - ds.addRow(new Array("010121","13427", "LJ SHOPPING CIDADE","57055-000","AVENIDA FERNANDES LIMA","679","FAROL","MACEIÓ","AL")); - ds.addRow(new Array("010124","14617", "LJ PARQUE SHOPPING","57038-000","AVENIDA GUSTAVO PAIVA","5945","CRUZ DAS ALMAS",",MACEIÓ","AL")); - ds.addRow(new Array("010126","14668", "LJ MIX MATHEUS ANTARES","57038-410","AVENIDA MENINO MARCELO","5300","ANTARES","MACEIÓ","AL")); - ds.addRow(new Array("010128","20006", "LJ SÃO SEBASTIÃO","43850-000","PRAÇA DOZE DE OUTUBRO","65","CENTRO","SÃO SEBASTIÃO DO PASSÉ","BA")); - ds.addRow(new Array("010130","20009", "LJ CANDEIAS BAIXO","43815-050","AVENIDA ANTONIO PATTERSON","196","TRIÂNGULO","CANDEIAS","BA")); - ds.addRow(new Array("010131","20005", "LJ CANDEIAS CIMA","43805-000","RUA 13 DE MAIO","147","CENTRO","CANDEIAS","BA")); - ds.addRow(new Array("010132","20056", "LJ SIMÕES FILHO","43700-000","AV LUÍS EDUARDO MAGALHÃES","109","CENTRO","SIMÕES FILHO","BA")); - ds.addRow(new Array("010133","20057", "LJ CONCEIÇÃO COITÉ","48730-000","RUA DR AMÂNCIO MOTA","30","CENTRO","CONCEIÃO DO COITÉ","BA")); - ds.addRow(new Array("010134","20441", "LJ LAGARTO","49400-000","AVENIDA LEANDRO MACIEL","36","CENTRO","LAGARTO","SE")); - ds.addRow(new Array("010135","20968", "HIB ITABAIANINHA","49290-000","PRAÇA OLÍMPIO CAMPOS","154","CENTRO","ITABAIANINHA","SE")); - ds.addRow(new Array("010136","20969", "HIB MARECHAL DEODORO","57160-000","RUA DR TAVARES BASTOS","03","CENTRO","MARECHAL DEODORO","AL")); - ds.addRow(new Array("010137","20970", "VD SÃO SEBASTIÃO","43850-000","PRAÇA DOZE DE OUTUBRO","116","CENTRO","SÃO SEBASTIÃO DO PASSÉ","BA")); - ds.addRow(new Array("010138","20986", "HIB OLINDINA","48470-000","AVENIDA ANTONIO MANGABEIRA","84","CENTRO","OLINDINA","BA")); - ds.addRow(new Array("010139","20989", "HIB QUEIMADAS","48860-000","PRAÇA CORONEL FRANCISCO LANTYER","21","CENTRO","QUEIMADAS","BA")); - ds.addRow(new Array("010140","20989", "HIB ENTRE RIOS","48180-000","AVENIDA JURACY MAGALHÃES","320","CENTRO","ENTRE RIOS","BA")); - ds.addRow(new Array("010141","20991", "HIB CAMPO ALEGRE","57250-000","RUA DO COMÉRCIO","49","CENTRO","CAMPO ALEGRE","AL")); - ds.addRow(new Array("010142","20992", "ER CONCEIÇÃO COITÉ","48730-000","RUA DR AMANCIO MOTA","35","CENTRO","CONCEIÇÃO DO COITÉ","BA")); - ds.addRow(new Array("010143","20993", "ER CANDEIAS","43815-010","AV ANTONIO PATTERSON","213","TRIANGULO","CANDEIAS","BA")); - ds.addRow(new Array("010144","20994", "ER SIMÕES FILHO","43700-000","AV LUÍS EDUARDO MAGALHÃES","109","CENTRO","SIMÕES FILHO","BA")); - ds.addRow(new Array("010145","20995", "ER LAGARTO","49400-000","AVENIDA LEANDRO MACIEL","36","CENTRO","LAGARTO","SE")); - ds.addRow(new Array("010146","20996", "ER ANTARES","57083-048","AV ANTONIO LISBOA DE AMORIM","220","ANTARES","MACEIÓ","AL")); - ds.addRow(new Array("010147","20997", "ER PITANGUINHA","57052-050","AVENIDA FERNANDES LIMA","840","PITANGUINHA","MACEIÓ","AL")); - ds.addRow(new Array("010148","20998", "CD TABULEIRO","57073-482","ESTRADA DA CODEAL","770","TABULEIRO","MACEIÓ","AL")); - ds.addRow(new Array("010149","20999", "HIB ESPLANADA","48370-000","PRAÇA LADISLAU CAVALCANTE","31","CENTRO","ESPLANADA","BA")); - ds.addRow(new Array("010150","21000", "HIB SANTALUZ","48880-000","RUA RIO BRANCO","96","CENTRO","SANTALUZ","BA")); - ds.addRow(new Array("010151","21001", "HIB RIO REAL","48330-000","PC SEN ANTONIO CARLOS MAGALHÃES","146","CENTRO","RIO REAL","BA")); - ds.addRow(new Array("010152","21007", "TÔ QUE TÔ MACEIÓ CENTRO","57020-220","AVENIDA MOREIRA LIMA","293","CENTRO","MACEIÓ","AL")); - ds.addRow(new Array("010153","21068", "LJ ATAKAREJO SIMÕES FILHO","43700-000","AV ENG ELMO SEREJO DE FARIAS","2073","CONJ HAB VIDA NOVA","SIMÕES FILHO","BA")); - ds.addRow(new Array("010154","21277", "LJ GBARBOSA SOCORRO","49160-000","AVENIDA 1","13","CONJ JOAO ALVES FILHO","NOSSA SENHORA DO SOCORRO","SE")); - ds.addRow(new Array("010155","21278", "ER SOCORRO","49140-000","AVENIDA COLETORA A","597","CONJ MARCOS FREIRE I","NOSSA SENHORA DO SOCORRO","SE")); - ds.addRow(new Array("010156","21495", "HIB BARRA DOS COQUEIROS","49140-000","AVENIDA OCEANICA","506","ANTONIO PEDRO","BARRA DOS COQUEIROS","SE")); - ds.addRow(new Array("010157","21296", "LJ SHOPPING PRÊMIO SOCORRO","49160-000","AVENIDA COLETORA A","S/N","CONJ MARCOS FREIRE I","NOSSA SENHORA DO SOCRRO","SE")); - ds.addRow(new Array("010159","21381", "LJ CAPIM GROSSO","44695-000","AV ACM","121","CENTRO","CAPIM-GROSSO","BA")); - ds.addRow(new Array("010160","21383", "ER CAPIM GROSSO","44695-000","AV ACM","121","CENTRO","CAPIM-GROSSO","BA")); - ds.addRow(new Array("010161","21375", "HIB IPIRÁ","44600-000","AVENIDA CESÁR CABRAL","15","CENTRO","IPIRÁ","BA")); - ds.addRow(new Array("010162","21624", "MIX MATEUS TRAPICHE","57010-000","AVENIDA SIQUEIRA CAMPOS","1295","PRADO","MACEIÓ","AL")); - ds.addRow(new Array("010163","22448", "ER CAMPO ALEGRE","57250-000","RUA DO COMÉRCIO","49","CENTRO","CAMPO ALEGRE","AL")); - ds.addRow(new Array("010164","23475", "MIX MATEUS TABULEIRO","57082-160","AV DOUTOR DURVAL DE GOIS MONTEIRO","9207","TABULEIRO","MACEIÓ","AL")); - ds.addRow(new Array("010165","22541", "ER RIO LARGO","57100-000","RUA JUDITH PAIVA","445","CENTRO","RIO LARGO","AL")); - ds.addRow(new Array("010166","AMG", "AMG SERRARIA","57046-000","AVENIDA MENINO MARCELO","S/N","SERRARIA","MACEIÓ","AL")); - ds.addRow(new Array("010167","23156", "SHOPPING CENTRO SUL","49400-000","AV CONTORNO BR","3795","SÃO JOSE","LAGARTO","SE")); - ds.addRow(new Array("030101","910173", "QDB PARQUE SHOPPING","57038-000","AVENIDA COMENDADOR GUSTAVO PAIVA","5945","CRUZ DAS ALMAS","MACEIÓ","AL")); - ds.addRow(new Array("030102","910291", "QDB MACEIO SHOPPING","57037-532","AVENIDA COMENDADOR GUSTAVO PAIVA","2900","MANGABEIRAS","MACEIÓ","AL")); - ds.addRow(new Array("070101","24452", "MATRIZ - ZEFERINO CORREIA","45000-520","RUA ZEFERINO CORREIA","17","CENTRO","VITORIA DA CONQUISTA","BA")); - ds.addRow(new Array("070102","24457", "HIB LIMA GUERRA","45000-390","AL. LIMA GUERRA","04","CENTRO","VITORIA DA CONQUISTA","BA")); - ds.addRow(new Array("070103","24451", "HIB CANDIDO SALES","24157-000","AL. RIO BRANCO","373","CENTRO","CÂNDIDO SALES","BA")); - ds.addRow(new Array("070104","24455", "LOJA SHOPPING CONQUISTA SUL","45055-900","AVENIDA JURACY MAGALHAES","3340","FELICIA","VITORIA DA CONQUISTA","BA")); - ds.addRow(new Array("070105","24447", " VD BARRA CHOCA","45120-000","AV GETULIO VARGAS","98","CENTRO","CHOCA","BA")); - ds.addRow(new Array("070106","24449", "LOJA BRASIL","45051-070","AV ITABUNA","2724","BRASIL","VITORIA DA CONQUISTA","BA")); - ds.addRow(new Array("070107","24450", "LOJA ASSAI FELICIA","45055-686","AV ANEL DE CONTORNO","S/N","FELICIA","VITORIA DA CONQUISTA","BA")); - ds.addRow(new Array("070108","24448", "LOJA SHOPPING CONQUISTA","45055-900","AV JURACY MAGALHAES","3340","FELICIA","VITORIA DA CONQUISTA","BA")); - ds.addRow(new Array("070109","24458", "VD CONDEUBA","46200-000","PC NOSSA SENHORA APARECIDA","08","CENTRO","CONDEÚBA","BA")); - ds.addRow(new Array("070111","24456", "LOJA PANVICON CENTER","45000-230","AVENIDA LAURO DE FREITAS","142","CENTRO","VITORIA DA CONQUISTA","BA")); - ds.addRow(new Array("070112","24454", "LOJA NOVE DE NOVEMBRO","45000-370","PC NOVE DE NOVEMBRO","10","CENTRO","VITORIA DA CONQUISTA","BA")); - ds.addRow(new Array("070113","24453", "LOJA UNIVERSIDADE","45031-000","AV OLIVIA FLORES","2500","UNIVERSIDADE","VITORIA DA CONQUISTA","BA")); - - - - return ds; - -} -function onMobileSync(user) { - -} \ No newline at end of file diff --git a/Transferência Ginseng/datasets/ds_LojasTransf.js b/Transferência Ginseng/datasets/ds_LojasTransf.js deleted file mode 100644 index 7b292c4..0000000 --- a/Transferência Ginseng/datasets/ds_LojasTransf.js +++ /dev/null @@ -1,113 +0,0 @@ -function defineStructure() { - -} -function onSync(lastSyncDate) { - -} -function createDataset(fields, constraints, sortFields) { - var dataset = DatasetBuilder.newDataset(); - - // Definir as colunas - dataset.addColumn("codigoCentroCusto"); - dataset.addColumn("centroCusto"); - dataset.addColumn("gestorCentroCusto"); - dataset.addColumn("emailGestor"); - dataset.addColumn("id"); - dataset.addColumn("idGestor"); // Aqui será armazenada a matrícula do gestor - - // Lista dos centros de custo - var dados = [ - ["3546", "LJ HIPER FAROL - (CARREFOUR)", "3546 Ginseng", "3546@grupoginseng.com.br", "1"], - ["4560", "LJ MACEIÓ SHOPPING TERREO", "4560 Ginseng", "4560@grupoginseng.com.br", "2"], - ["5699", "LJ MOREIRA LIMA", "5699 Ginseng", "5699@grupoginseng.com.br", "3", "5699"], - ["12522", "LJ MACEIÓ SHOPPING EXPANSÃO", "12522 Ginseng", "12522@grupoginseng.com.br", "4"], - ["12817", "LJ SHOPPING PÁTIO", "12817 Ginseng", "12817@grupoginseng.com.br", "5"], - ["12818", "LJ GBARBOSA SERRARIA", "12818 Ginseng", "12818@grupoginseng.com.br", "6"], - ["12820", "LJ MÁRIO DE GUSMÃO(ATACADAO)", "12820 Ginseng", "12820@grupoginseng.com.br", "7"], - ["12823", "LJ PONTA VERDE", "12823 Ginseng", "12823@grupoginseng.com.br", "8"], - ["12824", "LJ GBARBOSA TABULEIRO", "12824 Ginseng", "12824@grupoginseng.com.br", "9"], - ["12826", "LJ HIPER JATIÚCA (ASSAÍ)", "12826 Ginseng", "12826@grupoginseng.com.br", "10"], - ["12828", "LJ GBARBOSA S.MARIS", "12828 Ginseng", "12828@grupoginseng.com.br", "11"], - ["12829", "LJ JACINTINHO", "12829 Ginseng", "12829@grupoginseng.com.br", "12"], - ["12830", "LJ LIVRAMENTO", "12830 Ginseng", "12830@grupoginseng.com.br", "13"], - ["12838", "LJ RIO LARGO", "12838 Ginseng", "12838@grupoginseng.com.br", "14"], - ["13427", "LJ SHOPPING CIDADE", "13427 Ginseng", "13427@grupoginseng.com.br", "15"], - ["14617", "LJ PARQUE SHOPPING", "14617 Ginseng", "14617@grupoginseng.com.br", "16"], - ["14668", "LJ HIPER ANTARES", "14668 Ginseng", "14668@grupoginseng.com.br", "17"], - ["19103", "LJ UNICOMPRA PONTA VERDE", "19103 Ginseng", "19103@grupoginseng.com.br", "18"], - ["20858", "LJ SUPER GIRO", "20858 Ginseng", "20858@grupoginseng.com.br", "19"], - ["20969", "HIB MARECHAL DEODORO", "20969 Ginseng", "20969@grupoginseng.com.br", "20"], - ["20991", "HIB CAMPO ALEGRE", "20991 Ginseng", "20991@grupoginseng.com.br", "21"], - ["20996", "ER ANTARES", "20996 Ginseng", "20996@grupoginseng.com.br", "22"], - ["20997", "ER PITANGUINHA", "20997 Ginseng", "20997@grupoginseng.com.br", "23"], - ["20998", "CD SERRARIA", "20998 Ginseng", "20998@grupoginseng.com.br", "24"], - ["21007", "TÔ QUE TÔ MACEIÓ CENTRO", "21007 Ginseng", "21007@grupoginseng.com.br", "25"], - ["21624", "LJ MIX MATEUS", "21624 Ginseng", "21624@grupoginseng.com.br", "27"], - ["21647", "LJ CARAJÁS", "21647 Ginseng", "21647@grupoginseng.com.br", "28"], - ["22541", "ER RIO LARGO", "22541 Ginseng", "22541@grupoginseng.com.br", "29"], - ["910173", "QDB PARQUE SHOPPING", "910173 Ginseng", "910173@grupoginseng.com.br", "30"], - ["20441", "LJ LAGARTO", "20441 Ginseng", "20441@grupoginseng.com.br", "31"], - ["20968", "HIB ITABAIANINHA", "20968 Ginseng", "20968@grupoginseng.com.br", "32"], - ["20995", "ER LAGARTO", "20995 Ginseng", "20995@grupoginseng.com.br", "33"], - ["21277", "LJ GBARBOSA SOCORRO", "21277 Ginseng", "21277@grupoginseng.com.br", "34"], - ["21278", "ER SOCORRO", "21278 Ginseng", "21278@grupoginseng.com.br", "35"], - ["21495", "HIB BARRA DOS COQUEIROS", "21495 Ginseng", "21495@grupoginseng.com.br", "36"], - ["21296", "LJ SHOPPING PREMIO SOCORRO", "21296 Ginseng", "21296@grupoginseng.com.br", "37"], - ["23475", "LJ MIX MATEUS TABULEIRO", "23475 Ginseng", "23475@grupoginseng.com.br", "38"], - ["910291", "QDB MACEIO SHOPPING", "910291 Ginseng", "910291@grupoginseng.com.br", "39"], - ["24711", "LJ GBARBOSA TABULEIRO", "24711 Ginseng", "24711@grupoginseng.com.br", "40"], - ["23665", "LJ BOULEVARD SHOPPING", "23665 Ginseng", "23665@grupoginseng.com.br", "41"], - ["23701", "LJ PRACA 9 DE NOVEMBRO", "23701 Ginseng", "23701@grupoginseng.com.br", "42"], - ["23702", "LJ GALERIA PANVICON", "23702 Ginseng", "23702@grupoginseng.com.br", "43"], - ["23704", "ER CONDEUBA", "23704 Ginseng", "23704@grupoginseng.com.br", "44"], - ["23705", "QQ SHOPPING CONQUISTA", "23705 Ginseng", "23705@grupoginseng.com.br", "45"], - ["23706", "LJ ASSAI VITORIA DA CONQUISTA", "23706 Ginseng", "23706@grupoginseng.com.br", "46"], - ["23707", "LJ BAIRRO BRASIL", "23707 Ginseng", "23707@grupoginseng.com.br", "47"], - ["23708", "HIB BARRA DO CHOCA", "23708 Ginseng", "23708@grupoginseng.com.br", "48"], - ["23709", "LJ SHOPPING CONQUISTA SUL", "23709 Ginseng", "23709@grupoginseng.com.br", "49"], - ["23711", "ER VITORIA DA CONQUISTA", "23711 Ginseng", "23711@grupoginseng.com.br", "50"], - ["23712", "HIB CANDIDO SALES", "23712 Ginseng", "23712@grupoginseng.com.br", "51"], - ["23713", "LJ RUA ZEFERINO CORREIA", "23713 Ginseng", "23713@grupoginseng.com.br", "52"] - - - - - - ]; - - // Buscar matrícula do gestor no dataset "colleague" - function getMatricula(gestorNome) { - var c1 = DatasetFactory.createConstraint("colleagueName", gestorNome, gestorNome, ConstraintType.MUST); - var dsUser = DatasetFactory.getDataset("colleague", ["colleagueId"], [c1], null); - return dsUser.rowsCount > 0 ? dsUser.getValue(0, "colleagueId") : ""; - } - - // Percorrer a lista e adicionar ao dataset - for (var i = 0; i < dados.length; i++) { - - var matricula = ""; - - // 🔴 EXCEÇÃO MANUAL – SOMENTE ESTE USUÁRIO - if (dados[i][2] === "23665 Ginseng") { - matricula = "23665"; - } else { - // fluxo normal - matricula = getMatricula(dados[i][2]); - } - - dataset.addRow([ - dados[i][0], // codigoCentroCusto - dados[i][1], // centroCusto - dados[i][2], // gestorCentroCusto - dados[i][3], // emailGestor - dados[i][4], // id - matricula // idGestor - ]); - } - - return dataset; -} - -function onMobileSync(user) { - -} \ No newline at end of file diff --git a/Transferência Ginseng/datasets/ds_LojasTransfteste.js b/Transferência Ginseng/datasets/ds_LojasTransfteste.js new file mode 100644 index 0000000..d6c4ad9 --- /dev/null +++ b/Transferência Ginseng/datasets/ds_LojasTransfteste.js @@ -0,0 +1,209 @@ +function createDataset(fields, constraints, sortFields) { + var dataset = DatasetBuilder.newDataset(); + + dataset.addColumn("PDV"); + dataset.addColumn("LOJA"); + dataset.addColumn("RESPONSAVEL_LOJA"); + dataset.addColumn("REGIONAL"); + dataset.addColumn("UF"); + dataset.addColumn("CIDADE"); + dataset.addColumn("STATUS"); + dataset.addColumn("CANAL"); + dataset.addColumn("ID"); + dataset.addColumn("LOGIN_LOJA"); + dataset.addColumn("COLLEAGUE_ID"); + dataset.addColumn("USER_CREATE"); + + try { + var clientService = fluigAPI.getAuthorizeClientService(); + var data = { + companyId: String(getValue("WKCompany") || "1"), + serviceCode: "GINSENG APITESTE", // ajuste para o codigo do servico cadastrado no Fluig + endpoint: "/base_pdvs", + method: "get", + timeoutService: "60000", + params: {} + }; + + var vo = clientService.invoke(JSON.stringify(data)); + var statusHttp = vo ? String(vo.getHttpStatusResult() || "") : ""; + var retorno = vo ? String(vo.getResult() || "") : ""; + + if (!retorno) { + dataset.addRow(["", "Sem resposta da API (HTTP " + statusHttp + ")", "", "", "", "", "", "", "", "", "", ""]); + return dataset; + } + + var objData = JSON.parse(retorno); + var success = !!objData.success; + var itens = objData.data || []; + + if (!success || !itens.length) { + var msg = trim(objData.message) || trim(objData.error) || "Sem lojas retornadas"; + dataset.addRow(["", msg + " (HTTP " + statusHttp + ")", "", "", "", "", "", "", "", "", "", ""]); + return dataset; + } + + var filtros = parseConstraints(constraints); + var colleagueCache = {}; + + for (var i = 0; i < itens.length; i++) { + var item = itens[i] || {}; + + var pdv = trim(item["PDV"]); + var loja = trim(item["PDV DESC"]); + var responsavel = trim(item["GESTAO"]) || trim(item["GESTAO"]); + var regional = trim(item["SUPERVISOR"]) || trim(item["SUPERVISOR"]); + var uf = trim(item["UF"]); + var cidade = trim(item["CIDADE"]); + var status = trim(item["STATUS"]); + var canal = trim(item["CANAL"]); + var id = trim(item["id"]); + var loginLoja = pdv ? (pdv + ".ginseng") : ""; + var colleagueId = resolveColleagueIdByLogin(loginLoja); + var userCreate = getUserCreateStatus(loginLoja, colleagueCache); + + if (filtros.onlyAtivo && status.toUpperCase() !== "ATIVO") { + continue; + } + if (filtros.pdv && pdv !== filtros.pdv) { + continue; + } + if (filtros.loja && normalize(loja).indexOf(normalize(filtros.loja)) === -1) { + continue; + } + if (filtros.termoLivre) { + var blob = normalize([ + pdv, + loja, + responsavel, + regional, + uf, + cidade + ].join(" ")); + if (blob.indexOf(normalize(filtros.termoLivre)) === -1) { + continue; + } + } + + dataset.addRow([ + pdv, + loja, + responsavel, + regional, + uf, + cidade, + status, + canal, + id, + loginLoja, + colleagueId, + userCreate + ]); + } + + if (dataset.rowsCount === 0) { + dataset.addRow(["", "Sem lojas apos filtros (HTTP " + statusHttp + ")", "", "", "", "", "", "", "", "", "", ""]); + } + + } catch (e) { + dataset = DatasetBuilder.newDataset(); + dataset.addColumn("ERRO"); + dataset.addRow([String(e)]); + } + + return dataset; +} + +function parseConstraints(constraints) { + var out = { + pdv: "", + loja: "", + onlyAtivo: true, + termoLivre: "" + }; + + if (!constraints) return out; + + for (var i = 0; i < constraints.length; i++) { + var c = constraints[i]; + if (!c || !c.fieldName) continue; + + var name = String(c.fieldName); + var value = trim(c.initialValue); + + if (name === "PDV" && value) out.pdv = value; + if (name === "LOJA" && value) out.loja = value; + if (name === "onlyAtivo" && value.toLowerCase() === "false") out.onlyAtivo = false; + + // Zoom costuma enviar constraints variadas de busca; capturamos termo livre. + if ( + value && + name !== "onlyAtivo" && + name !== "metadata#id" && + name !== "metadata#active" && + name !== "sqlLimit" + ) { + var cleaned = cleanSearchValue(value); + if (cleaned && (!out.termoLivre || cleaned.length > out.termoLivre.length)) { + out.termoLivre = cleaned; + } + } + } + + return out; +} + +function trim(v) { + return String(v == null ? "" : v).trim(); +} + +function normalize(v) { + return trim(v).toLowerCase(); +} + +function cleanSearchValue(v) { + var s = trim(v); + // remove curingas comuns de busca do Zoom/like + s = s.replace(/[%*_]/g, ""); + return trim(s); +} + +function getUserCreateStatus(loginLoja, cache) { + var login = trim(loginLoja); + if (!login) return "NAO"; + if (cache.hasOwnProperty(login)) return cache[login]; + try { + var cLogin = DatasetFactory.createConstraint("login", login, login, ConstraintType.MUST); + var cActive = DatasetFactory.createConstraint("active", "true", "true", ConstraintType.MUST); + var ds = DatasetFactory.getDataset("colleague", null, [cLogin, cActive], null); + var exists = !!(ds && ds.rowsCount > 0); + + // fallback para ambientes onde o identificador esta em colleagueId + if (!exists) { + var cId = DatasetFactory.createConstraint("colleaguePK.colleagueId", login, login, ConstraintType.MUST); + ds = DatasetFactory.getDataset("colleague", null, [cId, cActive], null); + exists = !!(ds && ds.rowsCount > 0); + } + + cache[login] = exists ? "OK" : "NAO"; + return cache[login]; + } catch (e) { + cache[login] = "NAO"; + return "NAO"; + } +} + +function resolveColleagueIdByLogin(loginLoja) { + var login = trim(loginLoja); + if (!login) return ""; + try { + var cLogin = DatasetFactory.createConstraint("login", login, login, ConstraintType.MUST); + var cActive = DatasetFactory.createConstraint("active", "true", "true", ConstraintType.MUST); + var ds = DatasetFactory.getDataset("colleague", null, [cLogin, cActive], null); + if (ds && ds.rowsCount > 0) { + return trim(ds.getValue(0, "colleaguePK.colleagueId")); + } + } catch (e) {} + return ""; +} diff --git a/Transferência Ginseng/datasets/ds_rgb_products.js b/Transferência Ginseng/datasets/ds_rgb_products.js new file mode 100644 index 0000000..de0d1d8 --- /dev/null +++ b/Transferência Ginseng/datasets/ds_rgb_products.js @@ -0,0 +1,267 @@ +function defineStructure() { + addColumn("Code"); + addColumn("Description"); + addColumn("codigoDescricao"); + addColumn("descricao"); + addColumn("sku"); + addColumn("id"); + addColumn("brand"); + addColumn("ncmId"); +} + +function onSync(lastSyncDate) {} + +function createDataset(fields, constraints, sortFields) { + var dataset = DatasetBuilder.newDataset(); + dataset.addColumn("Code"); + dataset.addColumn("Description"); + dataset.addColumn("codigoDescricao"); + dataset.addColumn("descricao"); + dataset.addColumn("sku"); + dataset.addColumn("id"); + dataset.addColumn("brand"); + dataset.addColumn("ncmId"); + + try { + var filtro = parseConstraints(constraints); + var clientService = fluigAPI.getAuthorizeClientService(); + var data = { + companyId: String(getValue("WKCompany") || "1"), + serviceCode: "GINSENG APITESTE", + endpoint: "/dados_rgb_products", + method: "get", + timeoutService: "60000", + params: {} + }; + + var vo = clientService.invoke(JSON.stringify(data)); + var statusHttp = vo ? String(vo.getHttpStatusResult() || "") : ""; + var retorno = vo ? String(vo.getResult() || "") : ""; + + // Fallback: se o servico integrado estiver com endpoint/base incorreto, chama URL direta. + if (statusHttp !== "200" || !retorno) { + var direct = fetchDirect("https://api.grupoginseng.com.br/dados_rgb_products", 60000); + statusHttp = String(direct.status || statusHttp); + retorno = direct.body || retorno; + } + + if (!retorno) { + addDiagRow(dataset, "Sem retorno da API (HTTP " + statusHttp + ")"); + return dataset; + } + + var obj = parseJsonSafe(retorno); + if (!obj) { + addDiagRow(dataset, "Falha no JSON da API (HTTP " + statusHttp + ")"); + return dataset; + } + + var itens = extractItems(obj); + if (!itens || !itens.length) { + addDiagRow(dataset, "API sem itens (HTTP " + statusHttp + ")"); + return dataset; + } + + var searchNorm = normalize(filtro.search); + var maxRows = filtro.maxRows; + + for (var i = 0; i < itens.length; i++) { + var item = itens[i] || {}; + + if (item.discontinued === true) { + continue; + } + if (item.purchaseBlocked === true) { + continue; + } + + var code = trim(item.sku); + var desc = trim(item.description); + var codigoDescricao = code + " - " + desc; + var brand = trim(item.brand); + var blob = normalize([code, desc, brand, trim(item.id)].join(" ")); + + if (searchNorm && searchNorm.length >= 2 && blob.indexOf(searchNorm) === -1) { + continue; + } + + dataset.addRow([ + code, + desc, + codigoDescricao, + desc, + code, + trim(item.id), + brand, + trim(item.ncmId) + ]); + + if (dataset.rowsCount >= maxRows) { + break; + } + } + + if (dataset.rowsCount === 0) { + addDiagRow(dataset, "Sem produtos apos filtros (busca: " + filtro.search + ")"); + } + + } catch (e) { + addDiagRow(dataset, "Erro ao consultar API: " + e); + } + + return dataset; +} + +function onMobileSync(user) {} + +function parseConstraints(constraints) { + var out = { + search: "", + maxRows: 200 + }; + + if (!constraints) { + return out; + } + + for (var i = 0; i < constraints.length; i++) { + var c = constraints[i]; + if (!c || !c.fieldName) continue; + + var name = String(c.fieldName); + var value = cleanSearchValue(c.initialValue); + + if (name === "sqlLimit") { + var n = parseInt(value, 10); + if (!isNaN(n) && n > 0 && n <= 1000) { + out.maxRows = n; + } + continue; + } + + if ( + value && + name !== "metadata#id" && + name !== "metadata#active" && + name !== "sqlLimit" + ) { + if (!out.search || value.length > out.search.length) { + out.search = value; + } + } + } + + return out; +} + +function cleanSearchValue(v) { + var s = trim(v); + s = s.replace(/[%*_]/g, ""); + // Evita que flags comuns do Fluig virem termo de busca + if (s === "true" || s === "false" || s === "on" || s === "off" || s === "1") { + return ""; + } + return trim(s); +} + +function normalize(v) { + return trim(v).toLowerCase(); +} + +function trim(v) { + return String(v == null ? "" : v).trim(); +} + +function parseJsonSafe(text) { + try { + return JSON.parse(text); + } catch (e) { + return null; + } +} + +function extractItems(obj) { + if (!obj) return []; + if (obj instanceof Array) return obj; + if (obj.data && obj.data instanceof Array) return obj.data; + + if (obj.content) { + if (obj.content instanceof Array) return obj.content; + if (typeof obj.content === "string") { + var parsedContent = parseJsonSafe(obj.content); + if (parsedContent && parsedContent.data && parsedContent.data instanceof Array) { + return parsedContent.data; + } + if (parsedContent && parsedContent instanceof Array) { + return parsedContent; + } + } + if (obj.content.data && obj.content.data instanceof Array) return obj.content.data; + } + + if (obj.result) { + if (obj.result instanceof Array) return obj.result; + if (typeof obj.result === "string") { + var parsedResult = parseJsonSafe(obj.result); + if (parsedResult && parsedResult.data && parsedResult.data instanceof Array) { + return parsedResult.data; + } + } + } + + return []; +} + +function addDiagRow(dataset, msg) { + dataset.addRow([ + "DEBUG", + String(msg), + String(msg), + String(msg), + "", + "", + "", + "" + ]); +} + +function fetchDirect(url, timeoutMs) { + var conn = null; + var reader = null; + try { + var URL = java.net.URL; + var HttpURLConnection = java.net.HttpURLConnection; + var InputStreamReader = java.io.InputStreamReader; + var BufferedReader = java.io.BufferedReader; + var StringBuilder = java.lang.StringBuilder; + + conn = new URL(url).openConnection(); + conn.setRequestMethod("GET"); + conn.setConnectTimeout(timeoutMs || 30000); + conn.setReadTimeout(timeoutMs || 30000); + conn.setRequestProperty("Accept", "application/json"); + + var status = conn.getResponseCode(); + var stream = (status >= 200 && status < 300) ? conn.getInputStream() : conn.getErrorStream(); + if (stream == null) { + return { status: status, body: "" }; + } + + reader = new BufferedReader(new InputStreamReader(stream, "UTF-8")); + var sb = new StringBuilder(); + var line = null; + while ((line = reader.readLine()) != null) { + sb.append(line); + } + + return { + status: status, + body: String(sb.toString()) + }; + } catch (e) { + return { status: 0, body: "" }; + } finally { + try { if (reader) reader.close(); } catch (e1) {} + try { if (conn) conn.disconnect(); } catch (e2) {} + } +} diff --git a/Transferência Ginseng/datasets/revenda.js b/Transferência Ginseng/datasets/revenda.js deleted file mode 100644 index 1fb3bc8..0000000 --- a/Transferência Ginseng/datasets/revenda.js +++ /dev/null @@ -1,61 +0,0 @@ -function defineStructure() { - addColumn("codigo"); - addColumn("descricao"); -} - -function onSync(lastSyncDate) {} - -function createDataset(fields, constraints, sortFields) { - var dataset = DatasetBuilder.newDataset(); - var dataSource = "/jdbc/ProtheusDS"; // Nome da conexão cadastrada no Fluig - var ic = new javax.naming.InitialContext(); - var ds = ic.lookup(dataSource); - var conn = ds.getConnection(); - var stmt = null; - var rs = null; - - try { - log.info("Iniciando execução do dataset..."); - - var sql = "SELECT b1_cod, b1_desc FROM sb1010 WHERE LEN(b1_cod) = 5 "; - log.info("Query SQL: " + sql); - - stmt = conn.prepareStatement(sql); - rs = stmt.executeQuery(); - - dataset.addColumn("codigo"); - dataset.addColumn("descricao"); - - var encontrados = {}; // Usando um objeto para evitar duplicação - - while (rs.next()) { - var codigo = rs.getString("b1_cod"); - var descricao = rs.getString("b1_desc"); - - if (!encontrados[codigo]) { // Verifica se já foi adicionado - encontrados[codigo] = true; // Marca como processado - log.info("Registro encontrado: " + codigo + " - " + descricao); - dataset.addRow([codigo, descricao]); - } - } - - if (Object.keys(encontrados).length === 0) { - log.info("Nenhum registro encontrado para a consulta."); - } - - } catch (e) { - log.error("Erro ao executar dataset: " + e.message); - } finally { - try { - if (rs) rs.close(); - if (stmt) stmt.close(); - if (conn) conn.close(); - } catch (e) { - log.error("Erro ao fechar recursos: " + e.message); - } - } - - return dataset; -} - -function onMobileSync(user) {} diff --git a/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/events/displayFields.js b/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/events/displayFields.js index 58779b3..8507a4f 100644 --- a/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/events/displayFields.js +++ b/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/events/displayFields.js @@ -11,13 +11,14 @@ function displayFields(form, customHTML) { var c1 = DatasetFactory.createConstraint("colleagueId", userId, userId, ConstraintType.MUST); var filter = new Array(c1); - var fields = new Array("colleagueName"); + var fields = new Array("colleagueName", "mail"); var retorno = DatasetFactory.getDataset("colleague", fields, filter, null); //requester if (activity == 0) { form.setValue("requesterName", retorno.getValue(0, "colleagueName")); form.setValue("requesterMail", retorno.getValue(0, "mail")); + form.setValue("emailSolicitante", retorno.getValue(0, "mail")); form.setValue("requesterId", userId); } else { form.setValue("currentUserName", retorno.getValue(0, "colleagueName")); diff --git a/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/excel.js b/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/excel.js index 745bfb6..4645a51 100644 --- a/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/excel.js +++ b/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/excel.js @@ -1,35 +1,163 @@ function carregarItensDoExcel(fileInputId) { - const file = document.getElementById(fileInputId).files[0]; + const fileInput = document.getElementById(fileInputId); + const file = fileInput ? fileInput.files[0] : null; if (!file) { FLUIGC.toast({ title: 'Erro', message: 'Nenhum arquivo selecionado.', type: 'danger' }); return; } + if (typeof XLSX === "undefined") { + FLUIGC.toast({ title: 'Erro', message: 'Biblioteca XLSX nao carregada.', type: 'danger' }); + return; + } + + showExcelLoading(); const reader = new FileReader(); - reader.onload = function(e) { - const data = new Uint8Array(e.target.result); - const workbook = XLSX.read(data, { type: 'array' }); - const sheet = workbook.Sheets[workbook.SheetNames[0]]; - const linhas = XLSX.utils.sheet_to_json(sheet); + reader.onload = function (e) { + // Permite o navegador renderizar o overlay antes de processar. + setTimeout(function () { + try { + const data = new Uint8Array(e.target.result); + const workbook = XLSX.read(data, { type: 'array' }); + const sheetName = workbook.SheetNames[0]; + const sheet = workbook.Sheets[sheetName]; + const linhas = XLSX.utils.sheet_to_json(sheet, { defval: "" }); - // Limpa a tabela (sem usar form) - const indices = $("input[id^='codigoItem___']").map(function() { - return $(this).attr("id").split("___")[1]; - }).get(); - indices.forEach(idx => fnWdkRemoveChild(idx)); + // Limpa a tabela (sem usar form) + const indices = $("input[id^='codigoItem___']").map(function () { + return $(this).attr("id").split("___")[1]; + }).get(); + $.each(indices, function (_, idx) { + fnWdkRemoveChild(idx); + }); - // Adiciona os itens da planilha - linhas.forEach(item => { - const idx = wdkAddChild('tabelaItens'); - window[`descricao___${idx}`].setValue(item.codigoItem); + const linhasValidas = []; + $.each(linhas, function (_, item) { + const codigo = getCellByAliases(item, ["codigoItem", "codigo", "codItem", "sku", "code", "item"]); + const quantidade = getCellByAliases(item, ["quantidadeItem", "quantidade", "qtd", "qtde"]); + const descricao = getCellByAliases(item, ["descricao", "description", "desc"]); - // $(`#codigoItem___${idx}`).val(item.codigoItem); - $(`#quantidadeItem___${idx}`).val(item.quantidadeItem); - $(`#codigoItem___${idx}`).val(item.descricao); - }); + if (!codigo || !quantidade) { + return; + } - FLUIGC.toast({ title: 'Sucesso', message: 'Itens carregados com sucesso!', type: 'success' }); + linhasValidas.push({ + codigo: String(codigo).trim(), + quantidade: String(quantidade).trim(), + descricao: String(descricao || "").trim() + }); + }); + + if (!linhasValidas.length) { + FLUIGC.toast({ + title: "Atencao", + message: "Nenhuma linha valida encontrada. Use colunas de codigo e quantidade.", + type: "warning" + }); + return; + } + + // Adiciona os itens da planilha + $.each(linhasValidas, function (_, item) { + const idx = wdkAddChild('tabelaItens'); + const zoomObj = window[`descricao___${idx}`]; + if (zoomObj && typeof zoomObj.setValue === "function") { + zoomObj.setValue(item.codigo); + } else { + // Fallback visual caso o objeto zoom ainda nao esteja pronto no momento. + $(`#descricao___${idx}`).val(item.codigo); + } + + $(`#quantidadeItem___${idx}`).val(item.quantidade); + + var descricaoFinal = item.descricao || buscarDescricaoProduto(item.codigo); + if (descricaoFinal) { + $(`#codigoItem___${idx}`).val(descricaoFinal); + } + }); + + FLUIGC.toast({ title: 'Sucesso', message: linhasValidas.length + ' itens carregados com sucesso!', type: 'success' }); + } catch (err) { + FLUIGC.toast({ title: 'Erro', message: 'Falha ao processar Excel: ' + err.message, type: 'danger' }); + console.error("Erro em carregarItensDoExcel:", err); + } finally { + hideExcelLoading(); + } + }, 30); + }; + + reader.onerror = function () { + FLUIGC.toast({ title: 'Erro', message: 'Nao foi possivel ler o arquivo Excel.', type: 'danger' }); + hideExcelLoading(); }; reader.readAsArrayBuffer(file); } + +function getCellByAliases(row, aliases) { + if (!row) return ""; + const keys = Object.keys(row); + for (let i = 0; i < aliases.length; i++) { + const alias = normalizeHeader(aliases[i]); + for (let k = 0; k < keys.length; k++) { + const originalKey = keys[k]; + if (normalizeHeader(originalKey) === alias) { + return row[originalKey]; + } + } + } + return ""; +} + +function normalizeHeader(text) { + return String(text || "") + .normalize("NFD") + .replace(/[\u0300-\u036f]/g, "") + .replace(/\s+/g, "") + .replace(/[^a-zA-Z0-9]/g, "") + .toLowerCase(); +} + +function buscarDescricaoProduto(codigo) { + try { + if (typeof DatasetFactory === "undefined" || typeof ConstraintType === "undefined") { + return ""; + } + + var codigoTxt = String(codigo || "").trim(); + if (!codigoTxt) return ""; + + var cCodigo = DatasetFactory.createConstraint("Code", codigoTxt, codigoTxt, ConstraintType.MUST); + var ds = DatasetFactory.getDataset("ds_rgb_products", null, [cCodigo], null); + if (!ds || !ds.values || !ds.values.length) { + return ""; + } + + for (var i = 0; i < ds.values.length; i++) { + var row = ds.values[i] || {}; + if (String(row.Code || "").trim() === codigoTxt) { + return String(row.descricao || row.Description || "").trim(); + } + } + + var first = ds.values[0] || {}; + return String(first.descricao || first.Description || "").trim(); + } catch (e) { + console.error("Erro ao buscar descricao por codigo:", e); + return ""; + } +} + +function showExcelLoading() { + var overlay = document.getElementById("excelLoadingOverlay"); + if (overlay) { + overlay.style.display = "flex"; + } +} + +function hideExcelLoading() { + var overlay = document.getElementById("excelLoadingOverlay"); + if (overlay) { + overlay.style.display = "none"; + } +} diff --git a/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/script.js b/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/script.js index ecf3aec..ab886ab 100644 --- a/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/script.js +++ b/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/script.js @@ -141,11 +141,32 @@ $(document).ready(function () { //formatarMoedasTabela("precoIndica___"); formatarMoedasTabela("ValorTotal"); + displayBtnFiles(); + invisibleBtnUpload("fnAnexo_Nfe"); + invisibleBtnUpload("fdAnexo_Coleta"); + invisibleBtnUpload("fdAnexo_Entrega"); + invisibleBtnUpload("fdAnexo_recebimento"); + // gerarTabelaCotacaoIndica("tabelaCotacaoIndica", "tabelaItens"); }); +function resolveFormModeFallback() { + var mode = ($("#formMode").val() || "").toUpperCase(); + if (mode) return mode; + try { + if (window.parent && window.parent.WCMAPI && typeof window.parent.WCMAPI.getFormMode === "function") { + return String(window.parent.WCMAPI.getFormMode() || "").toUpperCase(); + } + } catch (e) {} + return "ADD"; +} + +if (typeof window.getFormMode !== "function") { + window.getFormMode = resolveFormModeFallback; +} + function formatarMoedasTabela(ids) { $(document).on('input', `[id^="${ids}"]`, function() { let valor = $(this).val(); @@ -353,7 +374,8 @@ function setSelectedZoomItem(selectedItem) { } if (name_item == "descricao") { - $("#codigoItem" + "___" + indice).val(selectedItem["descricao"]); + var itemDescricao = selectedItem["descricao"] || selectedItem["Description"] || ""; + $("#codigoItem" + "___" + indice).val(itemDescricao); } } @@ -747,14 +769,13 @@ function displayBtnFiles(){ try{ $('.componentAnexo').each(function(i, element) { let inputFile = $(element).find(".inputAnexo") - let inputFileVew = $(element).find(".componentAnexo") let btnUpFile = $(element).find(".btnUpFile"); let btnViewerFile = $(element).find(".btnViewerFile"); let btnDownloadFile = $(element).find(".btnDownloadFile"); if(getFormMode() == "VIEW"){ btnUpFile.remove(); - if(inputFileVew.val() != ""){ + if(inputFile.val() != ""){ btnViewerFile.prop("disabled", false); btnViewerFile.show() } diff --git a/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/totvsflow_solicitacao_transferencia.html b/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/totvsflow_solicitacao_transferencia.html index 84f5f96..11ae815 100644 --- a/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/totvsflow_solicitacao_transferencia.html +++ b/Transferência Ginseng/forms/totvsflow_solicitacao_transferencia/totvsflow_solicitacao_transferencia.html @@ -1,902 +1,402 @@ - - - - - - - + + + + + - - - - - - - -
-
-
- - - +
+
+ + Importando planilha... +
+
- - - - - - - - - - - -
- -

Solicitao de Transferncia

- -
-
-
-
-

- -  Dados gerais   -

-
- Dados referentes aos responsveis pela abertura e pela - solicitao do atual processo. -
-
-
- -
-
-
-
- - -
-
- - -
-
-
-
-
-
-
-
- - -
-
- - -
-
-
-
-
-
-
-
- - * - -

- Preenchimento obrigatrio. -

- -
-
- - -
-
-
-
-
-
-
-
- - -
-
- - -
-
-
-
-
-
-
-
- - -
-
- - -
-
-
-
- -
-
-

- -  Itens   -

-
- Dados referentes ao itens de Transferncia necessrios para o - solicitante. -
-
-
- -
-
- - -
- - - - - - - - - - - - - - - -
- - - - - -
-
- -
-
-
-
- - - - - - - - - - - - - - - - - - -
#Cdigo do ItemQuantidadeDescrio
-
- -
-
-
- -

- Preenchimento obrigatrio. -

-
-
-
- -

- Preenchimento obrigatrio. -

-
-
-
- -
-
- -
-
-
- -    - -
-
-
-
-
-
-
-
- -
-
-

- -  Justificativa   -

-
- Motivos para a transferncia dos itens e as possíveis informaes - complementares. -
-
-
- -
-
-
-
- - * - -

- Preenchimento obrigatrio. -

-
-
-
-
-
-
+
+ +
+
+ Solicitação + Coleta + Entrega + Recebimento
-
-
-
-

- -  Validao dos Itens   -

-
- Informaaees complementares sobre a validao dos - da solicitao. -
-
+

Formulário de Transferência de Mercadorias

+ +
+

Dados da Transferência

+
+
+ + +
+
+ + +
+
+ + +
+
+
+
+ + +
+
+ + +
+
+
+ +
+

Itens da Transferência

+
+ + Colunas esperadas: codigo/codigoItem e quantidade/quantidadeItem. +
+ + + Nenhum arquivo selecionado +
+ +
+ + + + + + + + + + + + + + + + + + + +
#Código do itemQuantidadeDescrição
1 + + + + + + + +
+ +
+ +
+

Justificativa

+ +
+ +
+

Anexos por Etapa

+ +
+ + + + +
-
-
-
-
- - -
-
- - -
-
-
-
-
-
-
-
- - -
-
-
-
-
-
- -
- - -
- - - -
-
-
-
-
- -
-
-
-

- -  Emisso da NFE de transferncia   -

-
- Informaes complementares sobre a emisso da NFE. -
-
-
- -
-
-
-
- - -
-
- - -
-
-
-
-
-
-
-
-
- - -
-
-
-
-
-
- -
- - -
- - - -
-
-
-
-
- -
-
-
-

- -  Motorista Responsvel pela coleta   -

-
- Consideraes sobre a coleta -
-
-
-
-
-
-
- - -
-
- - -
-
-
-
-
-
-
-
- - -
-
-
-
-
-
- -
- - -
- - - -
-
-
-
-
- -
-
-
-

- -  Motorista responsvel pela entrega   -

-
- Consideraes sobre a entrega. -
-
-
-
-
-
-
- - -
-
- - -
-
-
-
-
-
-
-
- - -
-
-
-
-
-
- -
- - -
- - - -
-
-
-
-
- -
-
-
-

- -  Validao dos Itens entregues   -

-
+
+ + + + +
-
-
-
-
- - -
-
- - -
-
-
+
+ + + + +
-
-
-
-
- - *
-
- -
-
- -
-
- -
-
-
-
-
-
-
-
-
- - * - -

- Preenchimento obrigatrio. -

-
-
-
-
-
-
- -
- - -
- - - -
-
-
-
-
-
-
-
-

- -  Validar problema de transferncia   -

-
Dados referentes as implicaes desta transferncia.
-
+
+ + + + +
-
-
- - * - -

- Preenchimento obrigatrio. -

-
-
-
-
- Todos os campos com * so de preenchimento obrigatrio. -
+ + + + + + + + + + + + + + + +
- - \ No newline at end of file + + + + + +